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



我是Laravel 5的新手,试图一点一点地理解它,目前我真的对错误信息感到困惑。MVC对我来说是新事物。

我想做的是我的网站的博客系统,我已经下载了一个名为"Serverfireteam/blog"的包;https://phppackages.org/p/serverfireteam/blog

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

application .php第1119行错误:无法检测应用程序命名空间。(观点:/var/www/html/mpa2/resources/views/vendor/panelViews/dashboard.blade.php)

,和

application .php第1119行出现RuntimeException: Unable to detect application namespace.

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

我不知道怎么回事,我试着用谷歌搜索解决方案,但没有帮助。你知道有什么问题吗?

好了,我解决了。我是怎么解决这个问题的:

composer update

给出如下错误:

[SeldJsonLintParsingException]
"./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,最后一行多了一个逗号:

"require": {
    "php": ">=5.5.9",
    "laravel/framework": "5.1.*",
}

去掉逗号,变成这样:

"require": {
    "php": ">=5.5.9",
    "laravel/framework": "5.1.*"
}

问题就解决了

通常,这意味着您的编写器。json文件中包含无效的json。通常在数组的末尾加上一个逗号。

试着运行这个命令来告诉你问题的确切位置:

composer diagnose

版本号:5.8.3

[One more Reason]: composer中的默认应用路径。

默认设置如下所示

"psr-4": {
    "App\": "app/"
 },

如果修改为

"psr-4": {
    "Core\": "app/Core/"
 },

使用artisan的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

中修改。

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

<标题>解决方案:

Core/Application.php

<?php
namespace Core;
use IlluminateFoundationApplication as IlluminateApplication;
class Application extends IlluminateApplication
{
    protected $appPath = __DIR__;
}

bootstap/app.php

$app = new CoreApplication(
    $_ENV['APP_BASE_PATH'] ?? dirname(__DIR__)
);

请将此命令写入项目根目录作曲家诊断这个命令将检测问题我的箱子我发现了这个

 [SeldJsonLintParsingException]
  "./composer.json" does not contain valid JSON
  Parse error on line 1:
  3:06 PM 08-Dec-20{
  ^
  Expected one of: 'EOF', '}', ',', ']'

然后我去掉

下午3:06 08-Dec-20

Then I have Created Controller successfully .。

导致这种情况的原因是//注释了行。//可以在它自己的行上,也可以在行尾。最后加逗号也会导致这种情况。

删除注释解决了这个问题。和/或删除多余的逗号。

错误发生在"composer update"和工匠命令,如"php artisan make:controller TestsController——resource",或"php artisan make:model Test"

你可以打开composer。Json与可视化代码。和它将解析并标记问题

我已经解决了这个问题

最新更新