Wildfly部署Maven - 删除版本

时间:2016-09-27 14:42:40

标签: maven deployment wildfly conflict

我想使用wildfly-maven-plugin将我使用maven创建的战争部署到wildfly。

战争的最终名称如下: my-war-1.0.war
战争还包含 jboss-web.xml ,指定上下文根(例如/ my-war)

问题说明

如果我现在将战争部署到野生动物身上,我会得到一个" my-war-1.0.war"部署即可。
如果我后来想要部署一个新版本(例如战争现在命名为 my-war-1.1.war ),我就会发现冲突,因为上下文根已经知道,但部署有一个新名称。

有没有办法使用wildfly-maven-plugin来部署" my-war.war"代替?

我需要将原始的最终构建名称保留在maven构建中,以便进行版本控制并部署到我们的nexus。

2 个答案:

答案 0 :(得分:3)

最简单的解决方案是在<finalName/>配置上使用<build/>元素。

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

您可以使用maven war插件重命名最终战争。对于Eg:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.6</version>
            <configuration>
                <warName>my-war</warName>
            </configuration>
        </plugin>
    </plugins>
</build>

这将始终在你的&#34;目标&#34;中产生名为my-war.war的战争。 。目录

答案 1 :(得分:1)

我发现我可以在maven-wildfly-plugin的<name/>内使用参数<runtimeName/><configuration/>

这样我可以指定应该在服务器上调用的部署,每次只需替换它。让两个参数以“.war”结尾非常重要,否则会出现404错误。

使用此方法,我可以保留包含版本(my-app-1.0.war)的最终构建结果的原始名称,并将其存档在我们的内部nexus存储库中。