【问题标题】:Call to undefined method Doctrine\DBAL\Configuration::getFilterSchemaAssetsExpression()调用未定义的方法 Doctrine\DBAL\Configuration::getFilterSchemaAssetsExpression()
【发布时间】:2018-03-31 05:37:43
【问题描述】:

我在 symfony2 上更新了我的供应商,在我开始收到此错误后,我不知道为什么会出现此错误

uan@juan-VirtualBox:/var/www/msw-web$ php 应用程序/控制台原则:迁移:差异 PHP 警告:Xdebug 必须在第 0 行的 Unknown 中作为 Zend 扩展加载

PHP 致命错误:调用 /var/www/msw-web/vendor/doctrine-migrations/lib/Doctrine/DBAL/Migrations/Tools/Console/Command 中未定义的方法 Doctrine\DBAL\Configuration::getFilterSchemaAssetsExpression() /DiffCommand.php 第 85 行 PHP堆栈跟踪: PHP 1. {main}() /var/www/msw-web/app/console:0 PHP 2. Symfony\Component\Console\Application->run() /var/www/msw-web/app/console:22 PHP 3. Symfony\Bundle\FrameworkBundle\Console\Application->doRun() /var/www/msw-web/vendor/symfony/src/Symfony/Component/Console/Application.php:118 PHP 4. Symfony\Component\Console\Application->doRun() /var/www/msw-web/vendor/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php:75 PHP 5. Symfony\Component\Console\Command\Command->run() /var/www/msw-web/vendor/symfony/src/Symfony/Component/Console/Application.php:194 PHP 6. Symfony\Bundle\DoctrineMigrationsBundle\Command\MigrationsDiffDoctrineCommand->execute() /var/www/msw-web/vendor/symfony/src/Symfony/Component/Console/Command/Command.php:224 PHP 7. Doctrine\DBAL\Migrations\Tools\Console\Command\DiffCommand->execute() /var/www/msw-web/vendor/bundles/Symfony/Bundle/DoctrineMigrationsBundle/Command/MigrationsDiffDoctrineCommand.php:46

致命错误:调用 /var/www/msw-web/vendor/doctrine-migrations/lib/Doctrine/DBAL/Migrations/Tools/Console/Command/ 中未定义的方法 Doctrine\DBAL\Configuration::getFilterSchemaAssetsExpression()第 85 行的 DiffCommand.php

调用堆栈: 0.0003 328524 1. {main}() /var/www/msw-web/app/console:0 0.0210 1930264 2. Symfony\Component\Console\Application->run() /var/www/msw-web/app/console:22 0.0289 2110852 3. Symfony\Bundle\FrameworkBundle\Console\Application->doRun() /var/www/msw-web/vendor/symfony/src/Symfony/Component/Console/Application.php:118 0.1349 7697284 4. Symfony\Component\Console\Application->doRun() /var/www/msw-web/vendor/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php:75 0.1422 7697284 5. Symfony\Component\Console\Command\Command->run() /var/www/msw-web/vendor/symfony/src/Symfony/Component/Console/Application.php:194 0.1432 7697828 6. Symfony\Bundle\DoctrineMigrationsBundle\Command\MigrationsDiffDoctrineCommand->execute() /var/www/msw-web/vendor/symfony/src/Symfony/Component/Console/Command/Command.php:224 0.1767 11022484 7. Doctrine\DBAL\Migrations\Tools\Console\Command\DiffCommand->execute() /var/www/msw-web/vendor/bundles/Symfony/Bundle/DoctrineMigrationsBundle/Command/MigrationsDiffDoctrineCommand.php:46

juan@juan-VirtualBox:/var/www/msw-web$

我不确定问题是否来自 Doctrine。


我尝试更新理论 dbal,我在 mi 文件 deps 上使用过

doctrine-common
    git=http://github.com/doctrine/common.git
    version=2.2.1

doctrine-dbal
    git=http://github.com/doctrine/dbal.git
    version=2.2.1

doctrine
    git=http://github.com/doctrine/doctrine2.git
    version=2.2.1

但我得到了同样的错误,因为当我重新安装供应商时,它会下载 2.1.X 版本

我能做什么?

问候。

【问题讨论】:

  • “警告:Xdebug 必须作为 Zend 扩展加载”——您是否加载了 XDebug 扩展?
  • 我不知道但不用担心,自从我创建项目以来我就遇到了这个问题,我现在真正的问题是教义迁移

标签: php mysql symfony doctrine-orm vendor


【解决方案1】:

在 deps 文件中设置提交版本值

[doctrine-migrations]
    git=http://github.com/doctrine/migrations.git
    version=b86b4cc0a39714f0aa53b908d495beacfa0e4011

【讨论】:

    【解决方案2】:

    您应该检查您拥有的 Doctrine/DBAL 版本。可能您的 DoctrineMigrations 和 DoctrineDBAL 版本不兼容。

    在 2.2 IIRC 中添加了方法“getFilterSchemaAssetsExpression”。 看到commit

    【讨论】:

    猜你喜欢
    • 2022-12-21
    • 1970-01-01
    • 2017-07-20
    • 2018-07-10
    • 1970-01-01
    • 2018-09-21
    • 2016-02-19
    • 2014-03-20
    • 2011-12-07
    相关资源
    最近更新 更多