Craft 3.5로 업데이트하는 종속성 충돌
Aug 20 2020
3.4.3에서 Craft 3.5로 업데이트하려고하는데이 오류 메시지가 표시됩니다.
Composer output: Package "craftcms/vue-asset" listed for update is not installed. Ignoring.
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Conclusion: remove tcb13/substringy 1.0.0
- Conclusion: don't install tcb13/substringy 1.0.0
- Conclusion: remove danielstjules/stringy 3.1.0
- Installation request for tcb13/substringy (locked at 1.0.0) -> satisfiable by tcb13/substringy[1.0.0].
- Installation request for craftcms/cms 3.5.5 -> satisfiable by craftcms/cms[3.5.5].
- Conclusion: don't install voku/stringy 6.3.1
- craftcms/cms 3.5.5 requires voku/stringy ^6.2.2 -> satisfiable by voku/stringy[6.3.1, 6.3.0, 6.2.2].
- don't install voku/stringy 6.3.0|don't install danielstjules/stringy 3.1.0
- don't install voku/stringy 6.2.2|don't install danielstjules/stringy 3.1.0
- tcb13/substringy 1.0.0 requires danielstjules/stringy ^3.1 -> satisfiable by danielstjules/stringy[3.1.0].
- Conclusion: don't install danielstjules/stringy 3.1.0|install voku/stringy 6.3.1
여러 플러그인을 제거했지만 여전히 문제가 발생합니다. 다른 항목을 제거하는 것은 문제가 될 수 있으므로 충돌이 발생하는 위치를 추적 할 수있는 방법이 있습니까?
참고로 이것은 내 composer.json
:
{
"require": {
"craftcms/cms": "3.4.30",
"craftcms/element-api": "2.6.0",
"craftcms/redactor": "2.6.1",
"doublesecretagency/craft-cpcss": "2.2.1",
"elivz/craft-single-cat": "1.2.1",
"ether/tags": "1.0.7",
"jungleminds/nethooks": "1.1.2",
"venveo/craft-bulkedit": "2.0.5",
"verbb/cp-nav": "3.0.13.1",
"verbb/image-resizer": "2.0.10",
"verbb/super-table": "2.5.4",
"vlucas/phpdotenv": "^2.4.0"
},
"autoload": {
"psr-4": {
"modules\\": "modules/"
}
},
"config": {
"sort-packages": true,
"optimize-autoloader": true,
"platform": {
"php": "7.0"
}
},
"scripts": {
"post-root-package-install": [
"@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
]
}
}
답변
2 theAdhocracy Aug 24 2020 at 04:21
진정한 해결책은 아니지만 이것이 누군가에게 도움이 될 때 내가 취한 단계는 다음과 같습니다.
- 더미 데이터베이스를 설치 라이브 공예의 로컬 복제본을 생성하지만, 같은
composer.json
과project.yaml
파일. storage
및vendor
폴더와composer.lock
파일을 삭제 하십시오.- 을 실행
composer update
합니다. - 라이브 관리자 패널에서 플러그인을 설치합니다.
- 서버 에서
vendor
폴더와composer.lock
파일을 삭제하십시오 . - 새 로컬
vendor
폴더를 서버에 업로드하십시오 . - 플러그인을 다시 제거하면 composer가 실행됩니다.
그런 다음 업데이트 패널로 돌아가서 다시 실행하면 Craft가 문제없이 업그레이드되었습니다.