2013-07-26 4 views
1

우리 회사 프로젝트에 사용할 Maven Archetype을 만들었습니다. 잘못된 XML로 인해 실패한 아키타 입을 기반으로 구축 된 프로젝트를 배포 할 때까지 모든 것이 잘 작동했습니다.Maven archetype generate가 변수를 생성하지 못하도록 함

아키타 입을 생성하기 위해 만든 템플릿에는 여러 .xml 파일이 있습니다. 각각의 XML 선언이 있습니다

<?xml version="1.0" encoding="UTF-8"?> 

나를 위해 원형을 근절하기 위해 mvn archetype:create-from-project을 실행하는 경우를, 그것은 분명히 메이븐 키워드와 XML 선언 버전을 결정 변수에 싸서.

<?xml ${version}="1.0" encoding="UTF-8"?> 

프로젝트를 생성하기 위해 원형을 사용한 후, Maven을 분명히 프로젝트의 사용자가 선택한 버전이 변수를 대체 : 결과는 원형의 각 XML 선언이 된 것이 었습니다. 결과는 다음과 같습니다.

<?xml 1.0-SNAPSHOT="1.0" encoding="UTF-8"?> 

XML에 대해서는 분명히 유효하지 않습니다. 내 질문은 그렇다면 어떻게하면 mvn archetype:create-from-project이이를 막을 수 있습니까? 어떤 방법으로 범위를 제한하거나 명령 행에 플래그를 설정하는 방법이 있습니까?

답변

1

mvn 명령에 -Darchetype.filteredExtentions=extension1,extension2,... 명령을 추가하여 속도 대체를 할 때 포함 할 파일 확장명을 maven에게 알릴 수 있습니다. 이 필터 에는 파일 확장명이 포함되어 있으므로 모든 파일 확장자 목록을 만들고 xml을 생략하여 건너 뛸 수 있습니다. 프로젝트에서 xml이 유일한 파일 형식 인 경우 -Darchetype.filteredExtentions을 수행 할 수 있습니다.

+1

그게 전부 였어! 필터링 할 파일의 빈 목록 및 내 XML을 건드리지 않았다 :) –