실패한 지점에서 maven 빌드를 시작할 수 있습니까?


89

7 개의 모듈이있는 큰 프로젝트에서 전체 빌드를 수행하고 있고 6 번째 모듈에서는 테스트가 실패하여 빌드가 실패했다고 가정합니다. 실패한 지점에서 빌드를 시작할 수있는 방법이 있습니까?

답변:


134

-rf또는 --resume-from다음을 사용하여 6 번째 모듈에서 빌드를 재개 할 수 있습니다 .

-rf, --resume-from
          지정된 프로젝트에서 리액터 재개

자세한 내용은 Advanced Reactor 옵션 을 참조하십시오.


이것에 감사드립니다. 나는 그것을 시도 할 것입니다
Shekhar

1
하위 하위 프로젝트가 바로 사용이가 좋은 subproject/subsubproject매개 변수로
akostadinov

13
예 :maven -rf <module name> clean install
Zoltán 2014 년

9
이것은 모듈 이름 앞에 콜론을 추가했을 때만 저에게 효과적 mvn -rf :moduleName install이었습니다. (반드시 콜론이 필요하지만 것 같다 정확하게하지 이유 -. 적어도 내 설치를 위해)
스티브 챔버스에게

3
install재개 빌드는 로컬 Maven 저장소에서 이미 빌드 된 아티팩트를 가져와 종속성을 해결할 수 있기 때문에 초기 빌드에 목표가있는 경우에만 작동하는 것 같습니다. install스냅 샷으로 로컬 저장소를 복잡하게 만들고 예상보다 오래된 스냅 샷에 의존하게 될 때 빌드 를 실행하는 것은 나쁜 습관 입니다. 당신은 어디를위한과 같은 빌드 package와하지 install, 사용하는 -rf옵션이 아니다 : 당신이 전체 빌드를 수행해야합니다.
Frans

13

다음은 예입니다.

mvn clean install -rf :your-module

9

-rf명령 을 사용하여 원하는 모듈에서 빌드를 재개 할 수 있습니다 . 예를 들어 myproject-proxy에서 빌드가 실패한 경우 다음 명령을 사용할 수 있습니다.

mvn -rf myproject-proxy clean install

이 작업을 수행하려면 콜론을 넣어야했습니다. 예 : -rf : yourModule 다른 답변을 참조하십시오.
Gapmeister66

8

maven 요약을 보면 실행 된 모듈과 maven이 중지 된 위치를 볼 수 있습니다. 그런 다음 이것을 시도하십시오.

mvn clean install-Dmaven.test.skip=true -rf :yourModule

-1

구문 : mvn -rf modulename mavengoal 또는 mvn --resume-from modulename mavengoal

예 : mvn -rf admin-module clean install 또는 mvn --resume-from admin-module clean install


-rf은 짧지 않습니다 --remove-from. 줄여서--resume-from
Gili

-2

모듈 6 빌드를 별도로 실행하여 여전히 실패하는지 확인할 수 있지만 "큰"빌드를 실행하려면 처음부터 모든 모듈을 빌드해야합니다.

편집 : 물론 빌드의 일부로 클린 실행하지 않는 한 모듈 1-5의 코드가 이미 컴파일되어 있기 때문에 후속 빌드가 더 빠를 것입니다.


예 .. 나는 이것을 알고있다. 그러나 나는 그것이 실패한 지점에서 빌드를 시작하는 방법을 찾고 있었다 ..
Shekhar
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.