[maven] 버전없이 Maven 프로젝트를 빌드하는 방법은 무엇입니까?

버전없이 빌드하려는 메이븐 프로젝트가 있습니다.

이제 maven을 사용하여 프로젝트를 빌드하면 이것을 생성 commonjerseylib-1.0.war하지만 생성 해야합니다 commonjerseylib.war.

그 외에도 <version>태그를 제거 pom.xml했지만 Maven은 war기본적으로 버전 1.0으로 생성하고 있습니다.

pom.xml:

      <modelVersion>4.0.0</modelVersion>
      <groupId>commonjerseylib</groupId>
      <artifactId>commonjerseylib</artifactId>
      <packaging>ear</packaging>
      <name>commonjerseylib</name>
      <!--<version>1.0</version>-->

버전없이 빌드하는 방법은 무엇입니까?



답변

프로젝트의 버전 번호는 항상 필요하지만 <finalName>POM 의 요소를 통해 생성 된 패키지 (JAR, WAR, EAR 등)의 이름을 변경할 수 있습니다 .

<project>
    ...
    <build>
        ...
        <finalName>${project.artifactId}</finalName>
        ...
    </build>
    ...
</project>

또는 이전 버전의 maven에서 :

        ...
        <finalName>${artifactId}</finalName>
        ...

기본적으로 finalName은 ${project.artifactId}-${project.version}이지만 다른 것으로 변경할 수 있습니다. 이는 target디렉토리에 생성 된 패키지의 이름에만 영향을 미칩니다 . 로컬 저장소에 있고 원격 저장소에 업로드 된 파일 이름에는 항상 버전 번호가 있습니다.

자세한 정보는 POM 참조 문서 를 참조하십시오.


답변

빌드, 변경의 메이븐 전쟁 플러그인에서

<warName> ${artifactId} </warName>

        <build>
           ..........
             <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.3</version>
                <configuration>
                    <!-- web.xml is not mandatory since JavaEE 5 -->
                    <failOnMissingWebXml>false</failOnMissingWebXml>
                    <warName>${artifactId}</warName>
                </configuration>
            </plugin>
         .............
       <build>


답변

pom의 아래 코드 줄로 수정했습니다.

… … $ {project.artifactId} … …


답변