我已将Symfony应用程序部署到one.com服务器。我写了一个邮件服务,通过SwiftMailer发送我的电子邮件。
现在,由于one.com不允许使用phar-extensions,因此无法通过ssh更新作曲家。所以我用
在本地生成了类图composer update -o
每当我尝试获取Mail服务时,应用程序都会抛出错误:
致命错误:类 找不到'Stocksolutions \ ShopBundle \ DependencyInjection \ Mail' /customers/4/b/b/stocksolutions.be/httpd.www/releases/20150204201140/app/cache/dev/appDevDebugProjectContainer.php 在线3602
我搜索了作曲家类图,找不到找到的类:
'StockSolutions\\ShopBundle\\DependencyInjection\\Mail' => $baseDir . '/src/StockSolutions/ShopBundle/DependencyInjection/Mail.php'
此外,我可以在容器中获得其他服务,例如。来自FOSUserBundle的那些,但获取我的自定义服务会引发错误。另外,我在本地测试时没有遇到这些错误。
有什么想法吗?
答案 0 :(得分:5)
这是一个区分大小写的问题。
您的错误:
致命错误:类 &#39;库存<强>取值强> olutions \ ShopBundle \ DependencyInjection \邮件&#39;找不到
s
命名空间中的小写字母Stocksolutions
,以便PSR强制搜索文件/src/Stock**s**olutions/ShopBundle/DependencyInjection/Mail.php
,但存在/src/Stock**S**olutions/ShopBundle/DependencyInjection/Mail.php
。
在本地系统上可能是Windows,其中路径/文件名不区分大小写,不会发生错误。
P.S。很可能类命名空间中的拼写错误在捆绑服务描述中(services.yml
/ services.xml
)。