우리는 빌드되어 ant를 사용하는 사용자 정의 빌드 응용 프로그램을 보유하고 있습니다. 이 응용 프로그램에서는 Bob이라고합니다. xml 파일을 읽고 interproject 종속성을 이해합니다.gradle 프로젝트 의존성 빌드 할 개미 파일 사용
다음 프로젝트가 있습니다 파일/디렉토리 구조입니다.
--root
|--P1
|--P2
|--P3
|--P4
각 프로젝트 (root 제외)에는 build.xml 파일이 있습니다. 그래서 같이 보일 수 있습니다 밥의 interproject 종속 XML 파일은 다음과 같습니다
<project name="P1">
</project>
<project name="P2">
<dependencies>
<dependsOn name="P1"/>
</dependencies>
</project>
<project name="P3">
<dependencies>
<dependsOn name="P2"/>
</dependencies>
</project>
<project name="P4">
<dependencies>
<dependsOn name="P2"/>
</dependencies>
</project>
</projects>
그래서 당신은 당신이 단순히를 호출 개미 각 프로젝트를 빌드 그래서
--root
|P1
|--P2
|--P3
|--P4
과 같을 것이다 볼 수 종속성 트리 빌드 타겟. Bob에게 P3을 빌드하라고 말하면 P1, P2, P3 순으로 각 프로젝트마다 개미를 호출하는 것을 알고 있습니다.
Gradle의 ant.importBuild 'builder.xml'을 사용하고 빌드 순서가 항상 올바르도록 위의 프로젝트 구조를 정의하는 가장 간단한 방법은 무엇입니까?
이 작업을 위해 디렉터리를 다시 구성하고 싶지는 않습니다.
각 프로젝트의 각 개미 빌드 파일에는 "빌드"라는 단일 타겟이 포함되어 있다고 가정 해 보겠습니다. 내가 P3과 P4 후에 P2를하기 전에 P1에서이 타겟을 호출하려면 어떻게해야합니까? 전체 포트를 사용하는 것은 현재 카드에 없습니다. 관리자가 여기에 물어보기 전에 총알을 두드리기를 원합니다. :) – n4rzul
Y의 작업 전에 프로젝트 X에서 모든 작업을 쉽게 실행할 수 없으며 또한 잘못된 작업입니다. 대신 작업 종속성을 개별적으로 모델링해야합니다. 'compile.dependsOn (": otherProject : jar")'. 그러나이 작업은 실제로 빌드를 이식하면 다소 쓸모가 없습니다. –
예를 들어 jar 전에 컴파일하는 것과 같은 작업 간에는 종속성이 있음을 알고 있지만 프로젝트간에 종속성을 어떻게 표현합니까? – n4rzul