我使用Laravel 5.2创建了一个小应用程序。我将我的所有工作都保存在名为" Modules"的文件夹中。位于App/Modules
。
现在,我正在尝试将我的Modules
文件夹移出到App文件夹外的根目录""因此,我的Modules
文件夹现在位于App
旁边。
我想像Modules
文件夹一样自动加载App
文件夹。
自动加载Modules, I modified my
自动加载section of my
composer.json`,如下所示:
"autoload": {
"classmap": [
"database"
],
"psr-4": {
"App\\": "app/",
"Modules\\": "modules/"
}
},
此外,在app.php
配置文件中,我将此服务提供商添加到我的"提供商"阵列
Modules\Vendname\Surveys\Providers\CoreValidatorServiceProvider::class,
然后从命令行执行以下命令
composer dumpautoload
每次访问网站时,都会收到此错误
FatalErrorException in ProviderRepository.php line 146: Class 'Modules\Vendname\Surveys\Providers\CoreServiceProvider' not found
以下是我的CoreServiceProvider.php文件的代码
<?php
namespace Modules\Vendname\Surveys\Providers;
use Illuminate\Support\ServiceProvider;
class CoreServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
if (! $this->app->routesAreCached()) {
require __DIR__ . '/../routes.php';
}
}
/**
* Register any application services.
*
* @return void
*/
public function register()
{
}
}
我在这里做错了什么? 为了正确自动加载新文件夹,我需要做什么?
答案 0 :(得分:1)
我终于开始工作了。
我注释掉了这行
Modules\Vendname\Surveys\Providers\CoreValidatorServiceProvider::class,
然后在命令行中我执行了以下命令
php artisan clear-compiled
composer dumpautoload
composer update
然后我取消注释app.php文件中的行
Modules\Vendname\Surveys\Providers\CoreValidatorServiceProvider::class,