执行Typo3 8.7.16官方Composer/DDEV安装步骤为何触发PHP致命错误?
解决TYPO3 8.7.16 Composer安装时T3xDownloader2方法声明不兼容的致命错误
问题原因
TYPO3 8.7是已停止维护的老旧版本,其依赖的typo3/cms-composer-installers v1.5.10仅兼容Composer 2.2及以下版本。当前默认的最新Composer版本(2.3+)已更新ArchiveDownloader::extract方法的签名,新增参数类型提示与返回值类型要求,导致旧插件的方法声明不匹配,触发PHP致命错误。
解决方案
通过降级Composer到兼容的2.2.x LTS版本即可解决,操作步骤如下:
- 清理项目中已生成的不兼容文件:
rm -rf vendor composer.lock
- 在DDEV环境中将Composer降级到2.2系列稳定版本:
ddev composer self-update 2.2.22
- 重新执行安装命令:
ddev composer install
补充说明
- TYPO3 12属于较新版本,其配套的Composer插件已适配最新Composer版本,因此安装流程可正常完成。
- 若长期维护TYPO3 8.7项目,建议固定Composer版本为2.2.x,避免后续自动更新引发兼容问题。
内容的提问来源于stack exchange,提问作者lchristmann
相关产品推荐
相关产品推荐

