2010-02-17 4 views
1

proj.a라는 Eclipse RCP 플러그인 프로젝트가 있습니다.Eclipse RCP에서 종속성을 두 번 정의해야하는 이유는 무엇입니까?

다른 Eclipse RCP 플러그인 프로젝트 proj.b에 제품 정의 파일이 있습니다. 이 프로젝트는 proj.a 플러그인에 의존합니다.

proj.a를 변경하면 JUnit 테스트가 포함된다고 가정하면 JUnit에 대한 종속성이 자동으로 proj.a의 빌드 경로에 추가됩니다.

하지만 proj.b에서 정의한 제품을 실행하려면 proj.b의 제품 정의에 종속성을 수동으로 추가해야합니다.

왜 그럴까요? 제품이 JUnit에 의존한다는 것을 알 수는 없습니까? 아니면 이것이 Buckminster와 Maven 등의 문제 영역입니까?

답변

1

제품 파일에는 전체 종속성 그래프가 나열됩니다. plugin.a의 Junit에 종속성을 추가하면 JUnit없이 plugin.a를 실행할 수 없다는 말처럼 보입니다. 그리고 제품 파일에는 다른 플러그인에 정의 된 모든 플러그인이 종속성으로 나열됩니다. 그래서 왜 Junit을 플러그인에 대한 의존성으로 추가하는지 궁금합니다. 모범 사례는 plugin.a 및 Junit을 참조하는 모든 테스트 케이스로 별도의 플러그인을 만드는 것입니다. 그리고이 새로 생성 된 플러그인은 제품 파일에 나열되어 있지 않습니다. (최종 빌드로 JUnit 및 Testcases를 제공하고 싶습니까?) 또한 수동으로 종속성을 추가 할 필요가 없습니다. 제품 편집기에서 "필요한 플러그인 추가 "당신을 위해 그 일을합니다.

1

나는 이것이 도움이 될지 모르지만 다른 플러그인 다운 스트림에서 종속성 플러그인 A를 보려면 종속성을 다시 내 보내야합니다. PDE 편집기의 종속성 탭에서 수행 할 수 있습니다 (등록 정보 버튼)

0

수동으로 종속성을 추가 할 필요가 없습니다. "필수 플러그인 추가"버튼이 있습니다.

관련 문제