升级兼容性工具错误疑难解答

本文介绍在使用升级兼容性工具时可能遇到的错误,并提供确保成功执行的解决方案。

描述 description

环境

从2.3.0开始的Adobe Commerce版本

1.分段错误错误

原因: 当两个模块具有相同的名称时,升级兼容性工具显示分段错误错误。

2. 输出为空

重现步骤

  1. 如果运行此bash命令后:

    code language-none
    bin/uct upgrade:check INSTALLATION_DIR -c M2_VERSION
    
  2. 唯一输出为Upgrade compatibility tool

    code language-none
    bin/uct upgrade:check /var/www/project/magento/ -c 2.4.1
    Upgrade compatibility tool
    

原因

可能的原因是PHP内存限制。

有两种可能的解决方案可避免此PHP内存限制。

解决方法 resolution

分段错误的解决方案

要避免出现此错误,建议将模块的路径指定为参数:

bin/uct upgrade:check --current-version=2.4.4 path/to/the/module

警告:如果代码库在方法之间包含循环依赖关系,则升级兼容性工具可能无法分析该代码库。

空输出的 解决方案

解决方案1

通过将memory_limit设置为​ -1 ​覆盖内存限制:

php -d memory_limit=-1 /bin/uct upgrade:check INSTALLATION_DIR -c M2_VERSION

注意M2_VERSION是要与Adobe Commerce实例进行比较的目标Adobe Commerce版本。

解决方案2

添加-m选项允许升级兼容性工具独立分析每个特定模块,以避免在Adobe Commerce实例中遇到两个具有相同名称的模块。

此命令选项还允许升级兼容性工具分析包含多个模块的文件夹:

bin/uct upgrade:check /<dir>/<instance-name> -m /vendor/<vendor-name>/

相关阅读

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f