2010-12-02 5 views
1

Maven 아키타 입을 통해 생성 된 Maven 모듈의 최상위 디렉토리 이름을 어떻게 제어 할 수 있습니까? 현재 $artifactId이라는 새 폴더를 만듭니다. 아니면 더 직접적으로, 내 아키타 입은 모듈의 artifactId라는 이름의 폴더를 만들 수 있지만 대시는 밑줄로 대체 할 수 있습니까?Maven Archetype으로 생성 된 프로젝트의 루트 디렉토리 이름을 지정하십시오.

+0

이상하다, basedir 매개 변수가있다. http://maven.apache.org/archetype/maven-archetype-plugin/generate-mojo.html#basedir 그러나 나는 그것을 얻을 수 없다. –

답변

4

artifactId의 명명 규칙은 대시 (하이픈)를 사용합니다. 나는 모듈의 디렉토리를 artifactId가 아닌 다른 이름으로 만들 방법이 없다고 생각한다. 즉, 당신의 모듈이 당신의 artifactId와 똑같은 이름으로 지켜 져야한다는 것이 요구 사항이 아니라 온 라인 관습입니다. 즉, 프로젝트가 생성 된 후 단순히 artifactId 또는 모듈 폴더 이름 또는 둘 다를 원하는대로 변경할 수 있습니다.

+0

좋아, 그냥 "불가능"을 받아 들인다. 감사. – jtb

1

I는 내 artifactId를 대신 원형으로 제 필요한 등록 정보를 추가하고, 그 사용하여이 라운드 가지고 생성 POM 등 archtype-metadata.xml에서

:

<requiredProperties> 
... 
    <requiredProperty key="projectCode"/> 
</requiredProperties> 

pom.xml 파일 (및 다른 대체)에서 :

<artifactId>${projectCode}</artifactId> 

그래서 폴더를 artifactId를 위해 제공되는 이름을 가져옵니다,하지만 치어에서이 projectCode을 위해 제공되는 이름이 지정됩니다.

아쉽게도 archtype-metadata.xml 내에서 artifactId의 기본값을 제공 할 수없는 것 같습니다. 항상 폴더 이름을 동일하게 지정하고 싶습니다.

관련 문제