Hallo zusammen,
ich verwende in allen Laminas MVC Anwendungen Doctrine via https://github.com/doctrine/DoctrineModule bzw. https://github.com/doctrine/DoctrineORMModule
Seit dem letzten "composer up" begrüßt mich allerdings eine dieser Anwendungen mit:
(Das Leerzeichen in den Klassennamen und den Smiley macht der Editor hier im Forum!)
Eine Prüfung des Vendor Ordners mit einer anderen funktionierenden Laminas MVC / Doctrine Anwendung hat ergeben, dass jede Menge Doctrine Klassen fehlen:
Defekte Anwendung:
vs. funktionierende Anwendung:
Die Composer.json sieht (in allen Anwendungen) hinsichtlich Doctrine wie folgt aus:
Eingebunden ist Doctrine in beiden Anwendungen identisch über die Laminas Config Files so wie es bei Github beschrieben ist.
Es gbt auch keine neuere Version von den beiden Modulen. Und ich verstehe halt nicht, warum die selben Module in anderen Anwendungen noch problemlos laufen.
Wenn ich in der funktionierenden Anwendung ein "composer up" mache löscht er mir die Doctrine Klassen auch nicht weg. Ich habe auch nirgendwo im Code ausserhalb von /vendor die genannte Klasse direkt eingebunden.
Hat jemand eine Idee? Bin echt ratlos. Danke
ich verwende in allen Laminas MVC Anwendungen Doctrine via https://github.com/doctrine/DoctrineModule bzw. https://github.com/doctrine/DoctrineORMModule
Seit dem letzten "composer up" begrüßt mich allerdings eine dieser Anwendungen mit:
Fatal error: Uncaught InvalidArgumentException: Driver with type "Doctrine\Common\Persistence\Mapping\Driver\Mappin gDriverChain" could not be found in /var/www/cardrepository/vendor/doctrine/doctrine-module/src/DoctrineModule/Service/DriverFactory.php:69 Stack trace:
#0 /var/www/cardrepository/vendor/doctrine/doctrine-module/src/DoctrineModule/Service/DriverFactory.php(39): DoctrineModule\Service\DriverFactory->createDriver(Object(Laminas\ServiceManager\Serv ic eManager), Object(DoctrineModule\Options\Driver))
#1 /var/www/cardrepository/vendor/doctrine/doctrine-module/src/DoctrineModule/Service/DriverFactory.php(49): DoctrineModule\Service\DriverFactory->__invoke(Object(Laminas\ServiceManager\ServiceM an ager), 'Doctrine\\Persis...')
#2 /var/www/cardrepository/vendor/doctrine/doctrine-module/src/DoctrineModule/ServiceFactory/AbstractDoctrineServiceFactory.php(43): DoctrineModule\Service\DriverFactory->createService(Object(Laminas\ServiceManager\Ser vi ceManager))
#3 /var/www/cardrepository/vendor/laminas/laminas-servicemanager/src/ServiceManager.php(765): DoctrineModule\ServiceFactory\AbstractDoctrineServ iceFactory->__invoke(Object(Laminas\ServiceManager\ServiceM an ager), 'doctrine.driver...', NULL)
#4 /var/www/cardrepository/vendor/laminas/laminas-servicemanager/src/ServiceManager.php(201): Laminas\ServiceManager\ServiceManager->doCreate('doctrine.driver...')
#5 /var/www/cardrepository/vendor/doctrine/doctrine-orm-module/src/DoctrineORMModule/Service/ConfigurationFactory.php(64): Laminas\ServiceManager\ServiceManager->get('doctrine.driver...')
#6 /var/www/cardrepository/vendor/doctrine/doctrine-orm-module/src/DoctrineORMModule/Service/ConfigurationFactory.php(16: DoctrineORMModule\Service\ConfigurationFactory->__invoke(Object(Laminas\ServiceManager\ServiceM an ager), 'Doctrine\\ORM\\Co...')
#7 /var/www/cardrepository/vendor/doctrine/doctrine-module/src/DoctrineModule/ServiceFactory/AbstractDoctrineServiceFactory.php(43): DoctrineORMModule\Service\ConfigurationFactory->createService(Object(Laminas\ServiceManager\Ser vi ceManager))
#8 in /var/www/cardrepository/vendor/laminas/laminas-servicemanager/src/ServiceManager.php on line 772
#0 /var/www/cardrepository/vendor/doctrine/doctrine-module/src/DoctrineModule/Service/DriverFactory.php(39): DoctrineModule\Service\DriverFactory->createDriver(Object(Laminas\ServiceManager\Serv ic eManager), Object(DoctrineModule\Options\Driver))
#1 /var/www/cardrepository/vendor/doctrine/doctrine-module/src/DoctrineModule/Service/DriverFactory.php(49): DoctrineModule\Service\DriverFactory->__invoke(Object(Laminas\ServiceManager\ServiceM an ager), 'Doctrine\\Persis...')
#2 /var/www/cardrepository/vendor/doctrine/doctrine-module/src/DoctrineModule/ServiceFactory/AbstractDoctrineServiceFactory.php(43): DoctrineModule\Service\DriverFactory->createService(Object(Laminas\ServiceManager\Ser vi ceManager))
#3 /var/www/cardrepository/vendor/laminas/laminas-servicemanager/src/ServiceManager.php(765): DoctrineModule\ServiceFactory\AbstractDoctrineServ iceFactory->__invoke(Object(Laminas\ServiceManager\ServiceM an ager), 'doctrine.driver...', NULL)
#4 /var/www/cardrepository/vendor/laminas/laminas-servicemanager/src/ServiceManager.php(201): Laminas\ServiceManager\ServiceManager->doCreate('doctrine.driver...')
#5 /var/www/cardrepository/vendor/doctrine/doctrine-orm-module/src/DoctrineORMModule/Service/ConfigurationFactory.php(64): Laminas\ServiceManager\ServiceManager->get('doctrine.driver...')
#6 /var/www/cardrepository/vendor/doctrine/doctrine-orm-module/src/DoctrineORMModule/Service/ConfigurationFactory.php(16: DoctrineORMModule\Service\ConfigurationFactory->__invoke(Object(Laminas\ServiceManager\ServiceM an ager), 'Doctrine\\ORM\\Co...')
#7 /var/www/cardrepository/vendor/doctrine/doctrine-module/src/DoctrineModule/ServiceFactory/AbstractDoctrineServiceFactory.php(43): DoctrineORMModule\Service\ConfigurationFactory->createService(Object(Laminas\ServiceManager\Ser vi ceManager))
#8 in /var/www/cardrepository/vendor/laminas/laminas-servicemanager/src/ServiceManager.php on line 772
Eine Prüfung des Vendor Ordners mit einer anderen funktionierenden Laminas MVC / Doctrine Anwendung hat ergeben, dass jede Menge Doctrine Klassen fehlen:
Defekte Anwendung:
Code:
# grep -r 'Doctrine\\Common\\Persistence\\Mapping\\Driver' /var/www/cardrepository/vendor/ /var/www/cardrepository/vendor/doctrine/doctrine-orm-module/config/module.config.php:use Doctrine\Common\Persistence\Mapping\Driver\MappingDriverChain; /var/www/cardrepository/vendor/doctrine/doctrine-orm-module/test/DoctrineORMModuleTest/Service/ConfigurationFactoryTest.php: $this->createMock(\Doctrine\Common\Persistence\Mapping\Driver\MappingDriver::class) /var/www/cardrepository/vendor/doctrine/doctrine-orm-module/test/DoctrineORMModuleTest/Service/DBALConnectionFactoryTest.php:use Doctrine\Common\Persistence\Mapping\Driver\MappingDriver;
Code:
# grep -r 'Doctrine\\Common\\Persistence\\Mapping\\Driver' /var/www/fbb/vendor/ /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Common/Persistence/Mapping/Driver/AnnotationDriver.php:namespace Doctrine\Common\Persistence\Mapping\Driver; /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Common/Persistence/Mapping/Driver/DefaultFileLocator.php:namespace Doctrine\Common\Persistence\Mapping\Driver; /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Common/Persistence/Mapping/Driver/FileDriver.php:namespace Doctrine\Common\Persistence\Mapping\Driver; /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Common/Persistence/Mapping/Driver/FileLocator.php:namespace Doctrine\Common\Persistence\Mapping\Driver; /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Common/Persistence/Mapping/Driver/MappingDriver.php:namespace Doctrine\Common\Persistence\Mapping\Driver; /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Common/Persistence/Mapping/Driver/MappingDriverChain.php:namespace Doctrine\Common\Persistence\Mapping\Driver; /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Common/Persistence/Mapping/Driver/PHPDriver.php:namespace Doctrine\Common\Persistence\Mapping\Driver; /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Common/Persistence/Mapping/Driver/StaticPHPDriver.php:namespace Doctrine\Common\Persistence\Mapping\Driver; /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Common/Persistence/Mapping/Driver/SymfonyFileLocator.php:namespace Doctrine\Common\Persistence\Mapping\Driver; /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Persistence/Mapping/Driver/AnnotationDriver.php:class_exists(\Doctrine\Common\Persistence\Mapping\Driver\AnnotationDriver::class); /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Persistence/Mapping/Driver/DefaultFileLocator.php:class_exists(\Doctrine\Common\Persistence\Mapping\Driver\DefaultFileLocator::class); /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Persistence/Mapping/Driver/FileDriver.php:class_exists(\Doctrine\Common\Persistence\Mapping\Driver\FileDriver::class); /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Persistence/Mapping/Driver/FileLocator.php:interface_exists(\Doctrine\Common\Persistence\Mapping\Driver\FileLocator::class); /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Persistence/Mapping/Driver/MappingDriver.php:interface_exists(\Doctrine\Common\Persistence\Mapping\Driver\MappingDriver::class); /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Persistence/Mapping/Driver/MappingDriverChain.php:class_exists(\Doctrine\Common\Persistence\Mapping\Driver\MappingDriverChain::class); /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Persistence/Mapping/Driver/PHPDriver.php:class_exists(\Doctrine\Common\Persistence\Mapping\Driver\PHPDriver::class); /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Persistence/Mapping/Driver/StaticPHPDriver.php:class_exists(\Doctrine\Common\Persistence\Mapping\Driver\StaticPHPDriver::class); /var/www/fbb/vendor/doctrine/persistence/lib/Doctrine/Persistence/Mapping/Driver/SymfonyFileLocator.php:class_exists(\Doctrine\Common\Persistence\Mapping\Driver\SymfonyFileLocator::class); /var/www/fbb/vendor/doctrine/doctrine-orm-module/config/module.config.php:use Doctrine\Common\Persistence\Mapping\Driver\MappingDriverChain; /var/www/fbb/vendor/doctrine/doctrine-orm-module/test/DoctrineORMModuleTest/Service/ConfigurationFactoryTest.php: $this->createMock(\Doctrine\Common\Persistence\Mapping\Driver\MappingDriver::class) /var/www/fbb/vendor/doctrine/doctrine-orm-module/test/DoctrineORMModuleTest/Service/DBALConnectionFactoryTest.php:use Doctrine\Common\Persistence\Mapping\Driver\MappingDriver;
Code:
"doctrine/doctrine-module": "^4.0", "doctrine/doctrine-orm-module": "^3.0",
Es gbt auch keine neuere Version von den beiden Modulen. Und ich verstehe halt nicht, warum die selben Module in anderen Anwendungen noch problemlos laufen.
Wenn ich in der funktionierenden Anwendung ein "composer up" mache löscht er mir die Doctrine Klassen auch nicht weg. Ich habe auch nirgendwo im Code ausserhalb von /vendor die genannte Klasse direkt eingebunden.
Hat jemand eine Idee? Bin echt ratlos. Danke
Kommentar