Wild Dep部署Maven

我想用野蛮的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构建版本中保留最初的最终构建名称,以便进行版本控制并部署到我们的连接。


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

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

你可以使用maven war插件重命名最终的战争。 例如:

<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>

这会在你的“目标”目录中始终以名字my-war.war产生战争。


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

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

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

链接地址: http://www.djcxy.com/p/79975.html

上一篇: Wildfly Deploy Maven

下一篇: Maven snapshot artifact publication file name