1
該項目在我的本地環境中工作,但是當我將其部署到共享Web服務器時,它不起作用。Symfony2在服務器的AppKernel中找不到致命錯誤類
Server
/home
/app
/src
/gestor
/UsuarioBundle
...
/vendors
....
/public_html
/web
app.php
...
如果我去主持/ app.php - > 致命錯誤:
班 'Gestor \ UsuarioBundle \ UsuarioBundle' 不/home/esdrhazc/app/AppKernel.php找到第19行
AppKernel.php
use Symfony\Component\HttpKernel\Kernel;
use Symfony\Component\Config\Loader\LoaderInterface;
class AppKernel extends Kernel
{
public function registerBundles()
{
$bundles = array(
new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
new Symfony\Bundle\SecurityBundle\SecurityBundle(),
new Symfony\Bundle\TwigBundle\TwigBundle(),
new Symfony\Bundle\MonologBundle\MonologBundle(),
new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
new Symfony\Bundle\AsseticBundle\AsseticBundle(),
new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
new Gestor\UsuarioBundle\UsuarioBundle(),
new Gestor\AdministracionBundle\AdministracionBundle(),
new Gestor\ExpedientesBundle\ExpedientesBundle(),
new Gestor\GestionBundle\GestionBundle(),
new \Ideup\SimplePaginatorBundle\IdeupSimplePaginatorBundle(),
new Gestor\MensajeBundle\MensajeBundle(),
new Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle()
);
if (in_array($this->getEnvironment(), array('dev', 'test'))) {
$bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
$bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle();
$bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle();
}
return $bundles;
}
public function registerContainerConfiguration(LoaderInterface $loader)
{
$loader->load(__DIR__.'/config/config_'.$this->getEnvironment().'.yml');
}
}
Autoload.php
use Doctrine\Common\Annotations\AnnotationRegistry;
use Composer\Autoload\ClassLoader;
/**
* @var ClassLoader $loader
*/
$loader = require __DIR__.'/../vendor/autoload.php';
$loader->add('Gestor', __DIR__.'/../src');
AnnotationRegistry::registerLoader(array($loader, 'loadClass'));
return $loader;
最後,例如,類Usuario.php
namespace Gestor\UsuarioBundle\Entity;
...
class Usuario implements AdvancedUserInterface {...}
我已經刪除了服務器/應用/緩存和授予權限。
在此先感謝!
也許您需要將文件夾'gestor'更改爲'Gestor'? – mattexx
它似乎工作。現在,我有其他問題:致命錯誤:Class'PDO'在148行/home/esdrhazc/vendor/doctrine/dbal/lib/Doctrine/DBAL/DriverManager.php中找不到,我將調查。我如何投票給你?爲了解決這個問題,我在php.ini中添加了extension = pdo.so extension = pdo_mysql.so – Ziencia
很高興幫助!我做了一個答案。 – mattexx