Ich erstelle ein neues Projekt in Symfony 2.1. Ich wollte überprüfen, ob meine Anwendung korrekt auf meinem Server läuft, also kopierte ich alle Dateien, löschte Cache und setzte Berechtigungen. lokal in allem dev Umgebung ist in Ordnung, aber wenn ich bitten „Online - prod“ Version auf meinem Server bekomme ich einen Fehler:Symfony2 - Klasse nicht in Prod-Umgebung gefunden
Fatal error: Class 'Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle' not found in /www/gastlich_www/www/livescore.gastlich.iq.pl/app/AppKernel.php on line 25
ich einige Informationen zu diesem Problem gefunden, aber alle von ihnen bezieht sich auf sich ändernde Namespace von Symfony \ Bundle zu Doctrine \ Bundle und Symfony 2.0.
Also habe ich meine AppKernel.php-Datei überprüft, und mein Bundle-Pfad war korrekt.
Mein composer.json wie folgt aussieht:
{
"name": "symfony/framework-standard-edition",
"description": "The \"Symfony Standard Edition\" distribution",
"autoload": {
"psr-0": { "": "src/" }
},
"require": {
"php": ">=5.3.3",
"symfony/symfony": "2.1.*",
"doctrine/orm": ">=2.2.3,<2.4-dev",
"doctrine/doctrine-bundle": "1.0.*",
"twig/extensions": "1.0.*",
"symfony/assetic-bundle": "2.1.*",
"symfony/swiftmailer-bundle": "2.1.*",
"symfony/monolog-bundle": "2.1.*",
"sensio/distribution-bundle": "2.1.*",
"sensio/framework-extra-bundle": "2.1.*",
"sensio/generator-bundle": "2.1.*",
"jms/security-extra-bundle": "1.2.*",
"jms/di-extra-bundle": "1.1.*",
"stof/doctrine-extensions-bundle": "dev-master",
"doctrine/doctrine-fixtures-bundle": "dev-master"
},
"scripts": {
"post-install-cmd": [
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
],
"post-update-cmd": [
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
]
},
"minimum-stability": "dev",
"extra": {
"symfony-app-dir": "app",
"symfony-web-dir": "web"
}
}
Und AppKernel.php Konfiguration:
<?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 JMS\AopBundle\JMSAopBundle(),
new JMS\DiExtraBundle\JMSDiExtraBundle($this),
new JMS\SecurityExtraBundle\JMSSecurityExtraBundle(),
new Acme\StoreBundle\AcmeStoreBundle(),
new Livescore\StatsBundle\LivescoreStatsBundle(),
new Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle(),
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');
}
}
Ich habe versucht, herauszufinden, wo ein Problem ist, so dass ich gelöscht Dieses Paket in AppKernel.php, und ich habe als nächstes einen Fatal Error:
Fatal error: Class 'Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle' not found in /www/gastlich_www/www/livescore.gastlich.iq.pl/app/AppKernel.php on line 24
So
Ich gehe davon aus, dass ich nur Probleme mit den letzten 2 Bündel haben: StofDoctrineExtensionsBundle und DoctrineFixturesBundle, die dev-Master-Versionen in composer.json haben. Zu diesem Zeitpunkt habe ich keine weitere Idee. Ich habe versucht, dieses Problem zu Google, aber 90% der Probleme war über Symfony 2.0 und Bewegen git-Repository;/
Lokale dev Umgebung: PHP 5.4.6 Mysql 5.5.27 Apache 2.2.22 (Fedora)
Und mein Server env: PHP 5.4.6 MySql 5.0.32
Jede Hilfe geschätzt wird.
Danke!
Ist diese Datei (mit DoctrineFixturesBundle Klasse) physisch existieren? Versuchen Sie run: php composer.phar update, und sehen, ob das Problem immer noch auftritt – Cyprian
Hallo, ich führe compser.phar update und ich habe einige Fehler mit "Quellverzeichnis hat nicht festgeschriebene Änderungen". Also löschte ich diese widersprüchlichen Anbieter und alles lief gut. Script hat keines der Fixtures/stof Bundle aktualisiert. Der nächste Schritt bestand darin, Änderungen an den Online-Server zu kopieren und das gesamte Anwendungsverzeichnis zu kopieren. Nach dem Löschen des Caches läuft meine Anwendung gut auf dem Online-Server und ich weiß nicht, wo das Problem war;/Danke für deine Hilfe und suggeriere :) –