我安装了symfony2和FOSUserBundle。两者都正常工作,但是当我访问FOSUserBundle的注册页面时,使用SwiftMailer进行电子邮件确认我立即收到以下错误。
Fatal error: Class 'Swift_Mailer' not found in /home/public_html/cache/dev/appDevDebugProjectContainer.php on line 1331
第1331行具有以下代码:
return $this->services['mailer'] = new \Swift_Mailer($this->get('swiftmailer.transport'));
在调试信息中,我看到SwiftMailerBundle已正确加载。现在我陷入了困境,我一直在努力解决这个问题,而且我还不熟悉Symfony。很确定这是我的缺点,但一双新鲜的眼睛会有所帮助。我错过了什么,这是可配置的吗? Swift \ Mailer类实际上位于服务器上,位于vendor / swiftmailer / swiftmailer / lib / classes / swift / mailer.php下
任何人都可以帮忙吗?非常感谢!
答案 0 :(得分:1)
您可以检查app \ autoload.php中是否有这些行:
// Swiftmailer needs a special autoloader to allow
// the lazy loading of the init file (which is expensive)
require_once __DIR__.'/../vendor/swiftmailer/lib/classes/Swift.php';
Swift::registerAutoload(__DIR__.'/../vendor/swiftmailer/lib/swift_init.php');