终极解决方案步骤
# 1. 清理旧依赖(强制模式) rm -rf vendor composer.lock # 2. 修正后的 composer.json(精确到每个版本) { "require": { "php": "^7.2|^8.0", "alibabacloud/sdk": "1.8.958", "alibabacloud/dysmsapi-20170525": "1.0.8", "laravel/framework": "6.20.44", "laravel/tinker": "1.7.3", "prettus/l5-repository": "2.9.0", "guzzlehttp/guzzle": "6.5.8", "predis/predis": "1.1.10", "fideloper/proxy": "4.0.0" }, "require-dev": { "phpunit/phpunit": "9.5.28", "mockery/mockery": "1.5.1", "nunomaduro/collision": "3.2.1", "fzaninotto/faker": "1.9.2", "beyondcode/laravel-dump-server": "1.7.0" } }
精准安装命令(逐条执行)
# 清理缓存(MacOS专用路径) rm -rf ~/Library/Caches/composer # 分步安装核心依赖 composer require "laravel/framework:6.20.44" \ "alibabacloud/sdk:1.8.958" \ "alibabacloud/dysmsapi-20170525:1.0.8" \ --no-update --ignore-platform-reqs # 安装开发依赖(关键顺序) composer require "phpunit/phpunit:9.5.28" \ "mockery/mockery:1.5.1" \ --dev --no-update --ignore-platform-reqs # 最终强制更新 COMPOSER_MEMORY_LIMIT=-1 composer update -W --ignore-platform-reqs
关键验证点
-
检查 PHPUnit 版本
./vendor/bin/phpunit --version # 必须显示:PHPUnit 9.5.28 composer show phpunit/phpunit # 必须显示:versions : 9.5.28
-
验证 Laravel 核心版本
bash
php artisan --version # 必须显示:Laravel Framework 6.20.44
兼容性强制锁定方案
如果仍遇到依赖冲突,使用此终极命令:
composer require \ "laravel/framework:6.20.44" \ "phpunit/phpunit:9.5.28" \ "alibabacloud/sdk:1.8.958" \ "alibabacloud/dysmsapi-20170525:1.0.8" \ "mockery/mockery:1.5.1" \ "guzzlehttp/guzzle:6.5.8" \ --no-update -W --ignore-platform-reqs