运行应用程序时找不到类错误

Posted

技术标签:

【中文标题】运行应用程序时找不到类错误【英文标题】:Class not found Error when running the application 【发布时间】:2016-02-01 22:06:42 【问题描述】:

我正在使用 Laravel 框架开发一个应用程序。当我尝试从 Firefox 浏览器加载应用程序(http://localhost/laravel/public/)时,出现以下错误:

C:\wamp\www\laravel\vendor\laravel\framework\src\Illuminate\Foundation\ProviderRepository.php 中的 FatalErrorException 第 150 行:找不到“Illuminate\Broadcasting\BroadcastServiceProvider”类

我尝试通过下面提到的几个解决方案来解决这个问题,但我无法摆脱。

    我尝试卸载 Composer 并使用 --dev-o 安装它,但这对我不起作用。 我尝试将文件夹 Vendor 从我的应用程序 (laravel) 中移出,然后通过更改 composer.lock 文件将其引入。这没有用。 我尝试重命名我的命名空间: C:\wamp\www\laravel>php artisan app:name laravel 即使这给了我同样的错误:[Symfony\Component\Debug\Exception\FatalErrorException] Class 'Illuminate\Broadcasting\BroadcastServiceProvider' not found

我的 composer.json 文件组件:


    "name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "type": "project",
    "require":  "php": ">=5.5.9", "laravel/framework": "5.1.*"
    ,
    "require-dev": 
        "fzaninotto/faker": "~1.4", "mockery/mockery": "0.9.*", 
        "phpunit/phpunit": "~4.0", "phpspec/phpspec": "~2.1"
    ,
    "autoload": 
        "classmap": ["database"],
        "psr-4": "App\\": "app/"
    ,
    "autoload-dev": "classmap": ["tests/TestCase.php"],
    "scripts": 
        "post-install-cmd": ["php artisan clear-compiled","php artisan optimize"],
        "pre-update-cmd": ["php artisan clear-compiled"],
        "post-update-cmd": ["php artisan optimize"],
        "post-root-package-install": ["php -r \"copy('.env.example', '.env');\"" ],
        "post-create-project-cmd": ["php artisan key:generate"]
    ,
    "config": "preferred-install": "dist",
    "require": "illuminate/html": "5.*","laravel/framework": "5.0.*"

你的帮助会让我摆脱困境。

【问题讨论】:

配置:Laravel 5,PHP:5.5.9 你能把你的composer.json文件里的内容贴出来吗? @James,我应该将“autoload”:“classmap”:[“database”],“psr-4”:“App\\”:“app/”更改为"autoload": "classmap": ["database"], "psr-4": "App\\": "laravel/" , ? 尝试删除此"require": "illuminate/html": "5.*","laravel/framework": "5.0.*" 并将"illuminate/html": "5.*" 放在开头的顶部要求中。这可能是你的麻烦的根源 - 让我知道你是怎么过的。 @James,我已经按照你所说的做了。我没有看到行为的变化。我的代码中还有什么可以帮助你看穿的吗? 【参考方案1】:

你应该跑

composer install --no-dev --no-scripts

然后

composer install --no-dev -o

【讨论】:

我尝试了 CLI 中的两个命令:首先,我收到“Nothing to install or update Generating autoload files”消息。对于第二个命令,我得到了,"> php artisan clear-compiled [Symfony\Component\Debug\Exception\FatalErrorException] Class 'Illuminate\Broadcasting\BroadcastServiceProvider' not found 脚本 php artisan clear-compiled 处理 post-install-cmd 事件返回错误 [RuntimeException] 错误输出:" 终于成功了。很抱歉这么晚才接受答案。 它对我不起作用!

以上是关于运行应用程序时找不到类错误的主要内容,如果未能解决你的问题,请参考以下文章

测试新模型时找不到 Eloquent 类

安装数据表类时找不到

为啥通过 PhpUnit 运行测试时找不到我的自定义 TestCase 类?

使用 jenkins 构建时找不到 Kotlin 类

Parcelable:从不同应用程序调用时解组时找不到类

运行程序时找不到主类