Symfony升级后Github Action抛出‘DOM is required’错误求助
解决思路
问题根源
本地Docker环境中,docker-php-ext-install xml会自动包含DOM、SimpleXML等XML相关扩展,但Github Action使用的php-actions/composer环境里,xml扩展并未默认包含DOM组件,需要显式声明安装。
修复步骤
- 修改Github Action工作流:在
php_extensions列表中添加dom扩展,更新后的步骤如下:
- name: Install php dependencies uses: php-actions/composer@v6 with: php_version: 8.2 php_extensions: gd intl bcmath curl xml zip mbstring mysqli iconv pdo_mysql dom version: 2.x
- 可选排查步骤:若仍有问题,可在工作流中添加扩展检查步骤,确认DOM是否已安装:
- name: Verify PHP extensions run: php -m | grep -E "(dom|xml)"
补充说明
Symfony 7.1对XML处理的依赖更严格,DOM扩展是部分核心组件(如XmlUtils)的必需依赖,本地环境因Docker官方镜像的扩展打包逻辑自动满足,但第三方CI环境可能需要单独指定。
内容的提问来源于stack exchange,提问作者Tommy Hoang
相关产品推荐
相关产品推荐

