Maven : 명령 줄에서 대상 디렉터리 경로를 변경하는 방법은 무엇입니까?
(경우에 따라 다른 대상 디렉토리를 사용하고 싶습니다)
답변
프로필을 사용해야합니다.
<profiles>
<profile>
<id>otherOutputDir</id>
<build>
<directory>yourDirectory</directory>
</build>
</profile>
</profiles>
그리고 프로필로 maven을 시작하십시오.
mvn compile -PotherOutputDir
명령 줄에서 디렉토리를 정의하려면 다음과 같이 할 수 있습니다 ( 전혀 권장하지 않음 ).
<properties>
<buildDirectory>${project.basedir}/target</buildDirectory>
</properties>
<build>
<directory>${buildDirectory}</directory>
</build>
그리고 다음과 같이 컴파일하십시오.
mvn compile -DbuildDirectory=test
사용하여 대상 디렉토리를 변경할 수 없기 때문입니다. -Dproject.build.directory
답변
Colin이 올바른 프로필을 사용해야합니다. 그러나 그의 대답은 프로필의 대상 디렉토리를 하드 코딩합니다. 대체 솔루션은 다음과 같은 프로필을 추가하는 것입니다.
<profile>
<id>alternateBuildDir</id>
<activation>
<property>
<name>alt.build.dir</name>
</property>
</activation>
<build>
<directory>${alt.build.dir}</directory>
</build>
</profile>
이렇게하면 POM, 사용자 설정 또는 명령 줄에서 제공 할 수있는 alt.build.dir 속성이 제공하는 모든 것으로 빌드 디렉토리를 변경하는 효과가 있습니다. 속성이 없으면 일반 대상 디렉터리에서 컴파일이 수행됩니다.