2014-09-05 3 views
2

에 호환되지 않는 버전의 제약 아래펍이 실패 얻을, [1] 해결 종속성 ... code_transformers

name: MyApp 
description: A sample command-line application 
dependencies: 
    csv_sheet: any 
    redstone: any 
    shelf_static: any 
    browser: any 
    angular: ">=0.14.0 <0.15.0" 
    polymer: ">=0.13.0" 
    core_elements: ">=0.2.0+1" 
    paper_elements: ">=0.1.1+2" 

나는 다음과 오류를

Pub get failed, [1] Resolving dependencies... 
Incompatible version constraints on code_transformers: 
- angular 0.14.0 depends on version >=0.1.4+2 <0.2.0 
- polymer 0.13.0 depends on version >=0.2.0 <0.3.0 

그래서 각과를 얻고 내 pubspec.yaml 파일입니다 중합체가 다른 버전의 code_transformers를 사용하고 있습니다.

내 pubspec.yaml을 작동시키는 각도 및 폴리머 버전 제약 조건의 조합이 있습니까?

+0

와우, 종속성 간의 종속성 공유. 이것은 잘 끝나지 않을 것입니다. – nobody

답변

3

당신은 당신의 pubspec.yaml 파일에

dependency_overrides: 
    code_transformers: '>=0.2.0 <0.3.0' 

를 추가 할 수 있습니다.

각도가이 code_transformers 버전으로 테스트되지 않았으므로이 내용의 책임 소재로 할 수 있습니다.
대안으로 이전 버전의 Polymer를 사용하거나 다음 각도 릴리스를 기다릴 수 있습니다.

+0

고마워, 그게 내 문제를 해결. 그래서 지금은 각도와 폴리머는 서로 다른 버전의 같은 의존성을 가지고 있기 때문에 함께 사용할 수 없습니다. 그들은 왜 의존성을 공유하지 않을 수 있습니까? 이 문제로 엄청난 양의 문제가 발생할 것이라고 동의하십니까? 이 디자인에 대한 정당성이 없다면 나는 실종되었다. – nobody

+0

글쎄, 둘 다 그 패키지에 의존하기 때문에 (둘 다 작동해야하기 때문에), 그들은 그들의 pubspecs에 의존성을 선언해야합니다. 호프리 (Hopeully)는 패키지 (각도, 고분자 및 그 의존성)가 충분히 성숙되면 문제가되지 않을 것입니다. 지금은 1.0.0 이전 버전이기 때문에 종속성이 있으므로 의존성 충돌이 있다는 것을 이해할 수 있습니다 (성가신 경우에도). – Tonio

+0

이론적으로 이들은 선언 된 버전 제약 조건 내에서 가능한 모든 종속 관계의 조합과 모든 종속적 종속성의 가능한 버전을 테스트해야합니다. 소수의 종속성으로 인해 이것은 많은 수의 조합이 될 수 있습니다. 문제를 피하기 위해 버전 제약 조건을 다소 제한적으로 만듭니다. Polymer와 Angular는 릴리스 날짜가 동기화되지 않았기 때문에 (거의 가능하지 않음) 그러한 상황이 발생합니다. @Tonio는 모든 관련 패키지에 많은 변경 사항이없고 특히 변경 사항이 거의 없을 때이 기능이 향상 될 것이라고 말했다. –