我有一个Laravel项目在本地工作(Mavericks),但psr-4下的类没有加载到我们的舞台服务器(CentOS)上.每次尝试编辑器更新或运行工匠命令时,我都会收到Reflection"class not found"错误.
我的所有特定于应用程序的类都存储在app/heatherland下的Laravel项目中,例如:
app/heatherland/import/ImportJob.php (file contains HeatherLand\Import\ImportJob)
Run Code Online (Sandbox Code Playgroud)
我的composer.json包含这个条目:
"autoload": {
"classmap": [
"app/commands",
...
"app/database/seeds",
],
"psr-4": {
"HeatherLand\\": "app/heatherland"
}
},
Run Code Online (Sandbox Code Playgroud)
在本地,psr-4类被添加到vendor/composer/autoload_classmap.php中的数组中.它们不会添加到舞台服务器上的此文件中.如果我手动剪切并粘贴它们,artisan命令可以正常工作,但下次运行composer命令时,自动加载文件会被覆盖.本地和舞台上的autoload_psr4.php都有以下条目,对我来说很好看:
'HeatherLand\\' => array($baseDir . '/app/heatherland'),
Run Code Online (Sandbox Code Playgroud)
这是我尝试/检查的东西列表:
任何新的建议欢迎.在这一点上,如果我做了一些愚蠢的事,我会很高兴的.