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.jsonproject.yaml파일.
  • storagevendor폴더와 composer.lock파일을 삭제 하십시오.
  • 을 실행 composer update합니다.
  • 라이브 관리자 패널에서 플러그인을 설치합니다.
  • 서버 에서 vendor폴더와 composer.lock파일을 삭제하십시오 .
  • 새 로컬 vendor폴더를 서버에 업로드하십시오 .
  • 플러그인을 다시 제거하면 composer가 실행됩니다.

그런 다음 업데이트 패널로 돌아가서 다시 실행하면 Craft가 문제없이 업그레이드되었습니다.