아키타 입을 통해 프로젝트를 생성 한 후에 목표를 실행해야합니다. maven-archetype-plugin은 이것을 "goals"매개 변수로 지원합니다. 나는 명령 줄에서 성공적으로이 작업을 수행 할 수 있어요 :"goals"설정 매개 변수를 무시하는 maven-archetype-plugin
mvn archetype:generate -Dgoals=foo-xyz:do-xyz
하지만 아키 타입 프로젝트의 POM 파일의 구성이 매개 변수를 추가 할 때이를 완전히 무시된다 : 내가 원하는
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-archetype-plugin</artifactId>
<version>2.2</version>
<configuration>
<goals>foo-xyz:do-xyz</goals>
</configuration>
</plugin>
내가 플러그인에서 문제를 열기 전에 내가 바보 같은 짓을하고 있지 않은지 확인하기. "goals"는 String 매개 변수입니다. 컬렉션도 배열도 아닙니다. 플러그인의 소스 코드는 쉼표로 분리하여 배열을 만듭니다. 코드를 살펴본 후 구성 값이 아닌 명령 줄 값이 필요한 이유는 없습니다. 내가 상상할 수있는 유일한 것은 내 구성이나 archetype : generate와 같은 모조 이외의 모듈에 버그가 있다는 것입니다.
'mvn archetype : generate'는 POM을 필요로하지 않습니다. 아무것도 사용하지 않고 프로젝트를 만드는 데 사용되기 때문에 (POM은 기존 POM을 읽을 수 있습니다 만 아키타 입 유형에 따라 업데이트 할 수 있습니다). 그러므로 나는 현재의 dir에있는 pom.xml이 플러그인 설정 등에 관한 한'archetype : generate'에 의해 무시되는 것으로 의심합니다. 버전을 가짜 값으로 설정하고 생성을 다시 실행하면 어떻게됩니까? 즉시 실패하거나 'foo-xyz : do-xyz' 목표를 실행하려고 시도 할 때만합니까? – misberner
플러그인의 버전을 2.999로 설정했습니다. "클린 인스톨"은 어떠한 에러도 발생시키지 않고 아키 타입 프로젝트에서 작업했습니다. 그리고 위의 명령 줄도 오류없이 실행되었습니다. – kurzweil4