2011-10-30 2 views
5

Ant의 depend 작업을 사용하면 종속성 (모듈 종속성이 아닌 참조 된 클래스)이 수정 된 경우 Java 소스 코드를 다시 컴파일 할 수 있습니다. 나는 org.apache.maven.plugin.CompilerMojoorg.codehaus.plexus.compiler.util.scan.StaleSourceScanner을 간략히 살펴 보았고, 외모에 의해 그들은 의존성을 전혀 고려하지 않았다. 타임 스탬프가 클래스 파일의 타임 스탬프보다 더 새로운 경우 (일부 델타 포함) 소스 코드가 다시 컴파일되는 것처럼 보입니다.maven-compiler-plugin은 부실 소스를 확인할 때 종속성을 고려합니까?

소스 코드가 변경되지 않았지만 종속성이있는 경우를 무시한 Maven입니까? (다시 컴파일해야합니까?)

답변

0

아무 것도 놓치지 않았습니다. 메이븐은이 사건을 무시하고 있습니다. 깨끗한 빌드로 작업해야합니다.

maven-versions-plugin은 최신 버전을 사용할 수 있는지 확인할 수 있으므로 방정식의 절반이됩니다. 깨끗한 재구성은 여전히 ​​수동 작업입니다.

+0

나는 내 질문을 오해 한 것으로 믿습니다. 모듈 종속성이 아니라 참조 된 클래스에 대해 이야기하고있었습니다. maven-versions-plugin은 모듈 의존성만을 처리합니다. – Gili

0

나는 maven-antrun-plugin을 사용합니다. 거기에서 구성 할 수 있습니다. 나는 그것이 자동이라고 생각하지 않는다. 내 말은 컴파일 할 때 처음 수동으로 지정해야한다는 뜻입니다. 병동이 문제를 처리 한 후에.