Php Symfony异常(未找到类)仅在开发和生产服务器上

Php Symfony异常(未找到类)仅在开发和生产服务器上,php,symfony,exception,laravel,Php,Symfony,Exception,Laravel,我在Laravel 4项目中仅在生产和测试服务器上遇到以下错误。在我的本地机器上一切正常: {“error”:{“type”:“Symfony\\Component\\Debug\\Exception\\FatalErrorException”,“message”:“找不到类'Intercom\\internetbasicauthclient',“file”:“\/www\/htdocs\/laravel\/app\/ACME\/Services\/internetservice.php”,“l

我在Laravel 4项目中仅在生产和测试服务器上遇到以下错误。在我的本地机器上一切正常:

{“error”:{“type”:“Symfony\\Component\\Debug\\Exception\\FatalErrorException”,“message”:“找不到类'Intercom\\internetbasicauthclient',“file”:“\/www\/htdocs\/laravel\/app\/ACME\/Services\/internetservice.php”,“line”:26}

我什么都试过了!我甚至删除了composer.lock文件和整个供应商目录,并通过composer安装进行了新的安装。没有任何帮助

我运行了
php artisan clear compiled
php artisan dump autoload
php artisan optimize
…没有任何帮助:(

该类在物理上位于正确的位置,并且在我的本地计算机上运行得非常好。 该类在IntercomService.php中也被完美引用,其use语句如下:

使用对讲机\internetbasicauthclient;

这是composer.json:

{
“名称”:“laravel/laravel”,
“说明”:“Laravel框架”,
“关键词”:[“框架”、“拉威尔”],
“许可证”:“麻省理工学院”,
“存储库”:[
{
“类型”:“vcs”,
“url”:”https://github.com/intercom/intercom-php"
}
],
“要求”:{
“laravel/框架”:“4.2.*”,
“内部通信/内部通信api客户端”:“开发主机”
},
“自动加载”:{
“类映射”:[
“应用程序/命令”,
“应用程序/控制器”,
“应用程序/数据库/迁移”,
“应用程序/数据库/种子”,
“app/tests/TestCase.php”
],
“psr-0”:{
“ACME”:“应用程序”
}
},
“脚本”:{
“安装后命令”:[
“php artisan优化”
],
“更新后命令”:[
“php artisan clear已编译”,
“php artisan优化”
],
“创建项目后cmd”:[
“php artisan密钥:生成”
]
},
“配置”:{
“首选安装”:“dist”
},
“最低稳定性”:“稳定”

}

我找到了解决方案!问题出在Intercom PHP包中。在包的src/文件夹中,他们用小写字母编写Intercom命名空间的文件夹,如下所示:

src/intercom/...
由于
intercom
与命名空间
intercom
不匹配,因此无法工作

然而,在我本地的Mac上它确实起作用了,因为我猜Mac是不区分大小写的,不在乎

我一直对这件事耿耿于怀,希望这能帮助其他人解决这类问题


确保您的命名空间与它所在的文件夹大小写匹配。

在使用
之前,您使用的
命名空间是什么?
我使用:
命名空间ACME\Services;
您能将第26行粘贴到调用IntercoBasicAuthClient的位置吗?$this->intercom=IntercoBasicAuthClient::factory(数组)(…嗨,我也面临着同样或类似的问题。这是我的问题,如果你有任何想法,请帮助我。