我已经用composer升级到Drupal8.4.0(从8.3.7),使用webflo/ Drupal严格地维护适当的核心依赖。
当我运行drush updb (使用drush 8.1.15)更新数据库时,我得到以下错误:
Symfony\Component\DependencyInjection\Exception\RuntimeException: Constructing service "validation.constraint" from a parent definition is not supported at build time. in /var/www/vendor/symfony/dependency-injection/ContainerBuilder.php on line 847 #0 /var/www/vendor/symfony/dependency-injection/ContainerBuilder.php(451): Symfony\Component\DependencyInjection\ContainerBuilder->createService(Object(Symfony\Component\DependencyInjection\DefinitionDecorator), 'validation.cons...')
#1 /var/www/vendor/symfony/dependency-injection/ContainerBuilder.php(957): Symfony\Component\DependencyInjection\ContainerBuilder->get('validation.cons...', 1)
#2 /var/www/vendor/symfony/dependency-injection/ContainerBuilder.php(954): Symfony\Component\DependencyInjection\ContainerBuilder->resolveServices(Object(Symfony\Component\DependencyInjection\Reference))
#3 /var/www/vendor/symfony/dependency-injection/ContainerBuilder.php(1145): Symfony\Component\DependencyInjection\ContainerBuilder->resolveServices(Array)
#4 /var/www/vendor/symfony/dependency-injection/ContainerBuilder.php(918): Symfony\Component\DependencyInjection\ContainerBuilder->callMethod(Object(Drupal\Core\Config\TypedConfigManager), Array)
#5 /var/www/vendor/symfony/dependency-injection/ContainerBuilder.php(451): Symfony\Component\DependencyInjection\ContainerBuilder->createService(Object(Symfony\Component\DependencyInjection\Definition), 'config.typed')
#6 /var/www/vendor/symfony/dependency-injection/ContainerBuilder.php(957): Symfony\Component\DependencyInjection\ContainerBuilder->get('config.typed', 1)
#7 /var/www/vendor/symfony/dependency-injection/ContainerBuilder.php(954): Symfony\Component\DependencyInjection\ContainerBuilder->resolveServices(Object(Symfony\Component\DependencyInjection\Reference))
#8 /var/www/vendor/symfony/dependency-injection/ContainerBuilder.php(879): Symfony\Component\DependencyInjection\ContainerBuilder->resolveServices(Array)
#9 /var/www/vendor/symfony/dependency-injection/ContainerBuilder.php(451): Symfony\Component\DependencyInjection\ContainerBuilder->createService(Object(Symfony\Component\DependencyInjection\Definition), 'config.factory')
#10 /var/www/docroot/modules/contrib/libraries/src/LibrariesServiceProvider.php(29): Symfony\Component\DependencyInjection\ContainerBuilder->get('config.factory')
#11 /var/www/docroot/core/lib/Drupal/Core/DependencyInjection/Compiler/ModifyServiceDefinitionsPass.php(30): Drupal\libraries\LibrariesServiceProvider->alter(Object(Drupal\Core\DependencyInjection\ContainerBuilder))
#12 /var/www/vendor/symfony/dependency-injection/Compiler/Compiler.php(120): Drupal\Core\DependencyInjection\Compiler\ModifyServiceDefinitionsPass->process(Object(Drupal\Core\DependencyInjection\ContainerBuilder))
#13 /var/www/vendor/symfony/dependency-injection/ContainerBuilder.php(573): Symfony\Component\DependencyInjection\Compiler\Compiler->compile(Object(Drupal\Core\DependencyInjection\ContainerBuilder))
#14 /var/www/docroot/core/lib/Drupal/Core/DrupalKernel.php(1307): Symfony\Component\DependencyInjection\ContainerBuilder->compile()
#15 /var/www/docroot/core/lib/Drupal/Core/DrupalKernel.php(884): Drupal\Core\DrupalKernel->compileContainer()
#16 /var/www/vendor/drush/drush/lib/Drush/Drupal/DrupalKernel.php(61): Drupal\Core\DrupalKernel->initializeContainer()
#17 /var/www/docroot/core/lib/Drupal/Core/DrupalKernel.php(466): Drush\Drupal\DrupalKernel->initializeContainer()
#18 /var/www/vendor/drush/drush/lib/Drush/Boot/DrupalBoot8.php(146): Drupal\Core\DrupalKernel->boot()
#19 /var/www/vendor/drush/drush/includes/bootstrap.inc(354): Drush\Boot\DrupalBoot8->bootstrap_drupal_full()
#20 /var/www/vendor/drush/drush/includes/bootstrap.inc(473): drush_bootstrap(5, 6)
#21 /var/www/vendor/drush/drush/lib/Drush/Boot/BaseBoot.php(59): drush_bootstrap_to_phase(6)
#22 /var/www/vendor/drush/drush/includes/preflight.inc(66): Drush\Boot\BaseBoot->bootstrap_and_dispatch()
#23 /var/www/vendor/drush/drush/drush.php(12): drush_main()
#24 {main}
Drush command terminated abnormally due to an unrecoverable error. [error]
Symfony\Component\DependencyInjection\Exception\RuntimeException: Constructing service "validation.constraint" from a parent definition is not supported at build time. in Symfony\Component\DependencyInjection\ContainerBuilder->createService() (line 847 of /var/www/vendor/symfony/dependency-injection/ContainerBuilder.php).有人能指出正确的方向来追踪这个错误吗?
发布于 2017-10-10 12:09:07
关于Drush 8,Drupal 8.4.0的发行说明有点误导。Drupal 8.4 + Drush 8 (8.1.12或更高版本)只在全局上工作,但您在本地使用Drush (在供应商目录中),因此需要Drush 9:
composer require drush/drush:~9.0顺便说一下,使用Drush 9是推荐的方法。尽管它还不稳定,但它仍然是更稳定的解决方案,因为它使用与D8.4相同的Symfony版本,而Drush 8仍然有旧的Symfony版本的D8.3来保持向后兼容性。
https://drupal.stackexchange.com/questions/247703
复制相似问题