首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel 5无法检测应用程序命名空间

问Laravel 5无法检测应用程序命名空间
EN

Stack Overflow用户
提问于 2015-08-09 10:55:10
回答 6查看 43.5K关注 0票数 59

我刚接触过Laravel 5,试着一点一点地理解它,现在我真的对错误信息感到困惑。MVC对我来说是新事物。

我想做的是我的站点的博客系统,我下载了名为“Serverfireteam/ blog”的包;https://phppackages.org/p/serverfireteam/blog

我想它安装得很好。当我进入http://myhost.com/public/panel/login时,我得到了登录屏幕,但是当我登录时,它给了我这个错误:

ErrorException在Application.php第1119行中:无法检测应用程序命名空间。(浏览: /var/www/html/mpa2/resources/views/vendor/panelViews/dashboard.blade.php)

&&

RuntimeException在Application.php第1119行中:无法检测应用程序命名空间。

有趣的是,它以前工作得很好,我可以登录并制作/编辑博客文章,我可以看到它们转到mysql数据库。我还能在现场看到他们。然后,我开始修改视图/模板文件,以便将博客输出集成到我的站点的布局中。

我不知道是什么原因,我试图谷歌解决方案,但没有帮助。有什么不对的吗?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2015-08-09 11:22:42

好吧,我解决了。我为解决这个问题所做的:

代码语言:javascript
复制
composer update

给了我以下错误:

代码语言:javascript
复制
[Seld\JsonLint\ParsingException]

"./composer.json" does not contain valid JSON
 Parse error on line 9:
"require-dev
 ---------------------^
 Expected: 'STRING' - It appears you have an extra trailing comma

我打开composer.json,最后一行中有一个额外的逗号:

代码语言:javascript
复制
"require": {
    "php": ">=5.5.9",
    "laravel/framework": "5.1.*",
}

删除了的逗号,因此它看起来如下所示:

代码语言:javascript
复制
"require": {
    "php": ">=5.5.9",
    "laravel/framework": "5.1.*"
}

问题就消失了。

票数 161
EN

Stack Overflow用户

发布于 2020-04-26 06:41:36

通常,这意味着您的composer.json文件包含无效的JSON。通常在数组末尾加一个逗号。

试着运行以下命令来告诉您问题的确切位置:

代码语言:javascript
复制
composer diagnose
票数 21
EN

Stack Overflow用户

发布于 2019-03-07 08:12:30

拉拉版本: 5.8.3

还有一个原因: composer.json中的默认应用程序路径被修改了

默认设置如下所示

代码语言:javascript
复制
"psr-4": {
    "App\\": "app/"
 },

如果修改后说,

代码语言:javascript
复制
"psr-4": {
    "Core\\": "app/Core/"
 },

与技工一起使用的make命令无法工作,还有其他一些事情

原因是https://github.com/laravel/framework/blob/5.3/src/Illuminate/Foundation/Application.php#L296

app在路径中是静态的,下面是抛出异常https://github.com/laravel/framework/blob/5.3/src/Illuminate/Foundation/Application.php#L1143的位置

此默认行为可以在bootstrap/app.php中修改。

这是我的解决方案reference: [https://laracasts.com/discuss/channels/general-discussion/how-i-can-change-laravel-directory-structure?page=1]

解决方案:

Core/Application.php

代码语言:javascript
复制
<?php

namespace Core;

use Illuminate\Foundation\Application as IlluminateApplication;

class Application extends IlluminateApplication
{
    protected $appPath = __DIR__;
}

bootstap/app.php

代码语言:javascript
复制
$app = new \Core\Application(
    $_ENV['APP_BASE_PATH'] ?? dirname(__DIR__)
);
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31903442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档