如何删除弃用的Symfony\Component\Debug\DebugClassLoader



我已将Symfony 3.4升级到4.4。剩下的唯一弃用警告是:

php.INFO:用户弃用:;Symfony\Component\Debug\DebugClassLoader"类已弃用自Symfony 4.4以来;Symfony\Component\ErrorHandler\DebugClassLoader"相反{异常:[对象](错误异常(代码:0(:用户已弃用:";Symfony\Component\Debug\DebugClassLoader"类从Symfony 4.4开始就被弃用,使用";Symfony\Component\ErrorHandler\DebugClassLoader"相反在/vender/symfony/symfony/src/symfony/Component/Debug/DebugClassLoader.php:16("}[]

我不会在任何地方使用DebugClassLoader。如何删除此警告?

检查您的index.phpbin/console文件。

例如,在index.php中,应该有这样一个部分:

if ($_SERVER['APP_DEBUG']) {
umask(0000);
Debug::enable();
}

但相应的导入可能是:

use SymfonyComponentDebugDebug;

在两个文件中都将其更改为:

use SymfonyComponentErrorHandlerDebug;

检查您的bin/console文件。

您需要更改:

使用Symfony\Component\Debug\Debug;

到:

使用Symfony\Component\ErrorHandler\Debug;

执行命令时,您将收到一条弃用消息。

在Configuration.php(vendor/codepception/codepception/src/Codepception(中

设置

'convert_deprecations_to_exceptions' => true

这对我来说很好

如果您检查跟踪,您将看到:

User Deprecated: The "SymfonyComponentDebugDebugClassLoader" class is deprecated since Symfony 4.4, use "SymfonyComponentErrorHandlerDebugClassLoader" instead.
Show context    Hide trace
{▼
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/Debug/DebugClassLoader.php:16 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/VarDumper/Caster/ExceptionCaster.php:216 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/VarDumper/Caster/ExceptionCaster.php:149 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/VarDumper/Cloner/AbstractCloner.php:341 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/VarDumper/Cloner/VarCloner.php:209 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/VarDumper/Cloner/AbstractCloner.php:274 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/DataCollector/DataCollector.php:85 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/DataCollector/LoggerDataCollector.php:75 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Profiler/Profiler.php:100 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/EventListener/ProfilerListener.php:127 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/Debug/WrappedListener.php:126 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/EventDispatcher.php:264 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/EventDispatcher.php:239 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/EventDispatcher.php:73 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/Debug/TraceableEventDispatcher.php:168 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/HttpKernel.php:103 {▶}
/var/www/html/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:166 {▶}
/var/www/html/web/app_dev.php:13 {▼
› $response->send();
› $kernel->terminate($request, $response);
› 
}
}

它似乎来自Symfony/Component/HttpKernel/Kernel

在供应商文件夹中搜索使用情况,如果它来自Symfony以外的其他组件,请检查该组件的更新版本,并对其进行修复。如果不推荐使用的组件仅由Symfony自己使用,我不会花太多时间担心它。一旦您将Symfony升级到下一个主要版本,它就会得到解决。

相关内容

最新更新