php - Symfony2 - 未找到 XXX 类

标签 php symfony composer-php

我已将 Symfony 应用程序部署到 one.com 服务器。我编写了一个邮件服务,通过 SwiftMailer 发送电子邮件。

现在,由于 one.com 不允许使用 phar 扩展名,因此无法通过 ssh 更新 Composer。所以我在本地生成了类映射

composer update -o

每当我尝试获取邮件服务时,应用程序都会抛出错误:

Fatal error: Class 'Stocksolutions\ShopBundle\DependencyInjection\Mail' not found in /customers/4/b/b/stocksolutions.be/httpd.www/releases/20150204201140/app/cache/dev/appDevDebugProjectContainer.php on line 3602

我搜索了 Composer 类映射,未找到的类在其中:

'StockSolutions\\ShopBundle\\DependencyInjection\\Mail' => $baseDir . '/src/StockSolutions/ShopBundle/DependencyInjection/Mail.php'

此外,我还可以在容器中获取其他服务,例如这些来自 FOSUserBundle,但获取我的自定义服务会引发错误。另外,我在本地测试时没有收到这些错误..

有什么想法吗?

最佳答案

这是区分大小写的问题。

您的错误:

Fatal error: Class 'Stocksolutions\ShopBundle\DependencyInjection\Mail' not found

PSR 的 Stocksolutions 命名空间中的

小写字母 s 强制搜索文件 /src/Stock**s**olutions/ShopBundle/DependencyInjection/Mail .php,但存在 /src/Stock**S**olutions/ShopBundle/DependencyInjection/Mail.php

在本地系统(例如 Windows)上,路径/文件名不区分大小写,不会发生错误。

附注类命名空间中的拼写错误很可能出现在捆绑服务描述 (services.yml/services.xml) 中。

关于php - Symfony2 - 未找到 XXX 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28382297/

相关文章:

java - 在 GWT 的 Java 或 PHP 之间进行选择!

javascript - 如何在 php 中将数组值设置为 javascript 函数闭包?

javascript - 如何从ajax返回两个html内容?

exception - 如何自定义Symfony异常页面?

date - Symfony2/Doctrine "app/console doctrine:schema:update --force"带来一个 ContextErrorException

composer-php - 在本地设置 TYPO3 以进行扩展开发

php - FB 广告 API (#17) 达到用户请求限制

php - Symfony 4 session 过早过期

php - 在 laravel 5.3 中调用 SEOStats 实例时找不到类 'SEOstats\SEOstats'

php - 如何在运行不同 php 版本的服务器上安装 Laravel