【发布时间】:2015-07-31 06:38:28
【问题描述】:
默认情况下,JHipster 在打包阶段生成 2 个战争(your_project_version.war 和 your_project_version.war.original)。第一个是可执行jar,第二个是可以在servlet容器中使用的war。
有没有办法只生成“原始”战争。我的项目不需要可执行文件,我想将战争部署到 Nexus。
【问题讨论】:
默认情况下,JHipster 在打包阶段生成 2 个战争(your_project_version.war 和 your_project_version.war.original)。第一个是可执行jar,第二个是可以在servlet容器中使用的war。
有没有办法只生成“原始”战争。我的项目不需要可执行文件,我想将战争部署到 Nexus。
【问题讨论】:
jhipster 生成的项目将使用 spring-boot,尤其是 spring-boot-maven-plugin,它默认将 repackage 目标绑定到 package 生命周期阶段。如果你想禁用重新打包,编辑你的 pomfile 就足够了,这样重新打包目标就不会执行(通过将绑定阶段设置为none):
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
<phase>none</phase>
</execution>
</executions>
</plugin>
如果您需要,您将能够直接运行目标,如下所示:
mvn package spring-boot:repackage
【讨论】:
在 SpringBoot 2 中,删除执行对我不起作用。我需要为包装设定目标:
<executions>
<execution>
<goals>
<goal>package</goal>
</goals>
<phase>none</phase>
</execution>
</executions>
【讨论】: