Wildfly Maven插件忽略了部署名称?

时间:2016-04-07 20:12:01

标签: wildfly maven-plugin wildfly-8

我使用Wildfly Maven插件在我的部署中添加了name参数:

mvn wildfly:deploy -Dname=myapp  -Dwildfly.hostname=myserver -Dwildfly.username=user -Dwildfly.password=pwd 

但是,它继续使用Maven版本和扩展进行部署。 以下是它在standalone.xml中的外观

<deployment name="myapp-1.1-SNAPSHOT.war" runtime-name="myapp-1.1-SNAPSHOT.war">
    <content sha1="17e09de2cd8f78ffd033a90b4e82bdb52eb9485b"/>
</deployment>

原因是简化部署过程。 Maven发布后,部署名称将更改为myapp-1.1.war,新开发项目将变为myapp-1.2-SNAPSHOT.war。我们希望将其简化为myapp-1.1.war,而不是取消部署版本myapp-1.2-SNAPSHOT.war和部署myapp,而只是重新部署<deployment name="myapp" runtime-name="myapp-1.1-SNAPSHOT.war"> <content sha1="17e09de2cd8f78ffd033a90b4e82bdb52eb9485b"/> </deployment> ,它应该覆盖旧版本。

顺便说一下,如果我只是部署,我将有两个版本。

为了清楚起见,这就是目标:

AxisType = "1"

这似乎是一个非常简单的案例,它应该按照文档:https://docs.jboss.org/wildfly/plugins/maven/latest/deploy-mojo.html

工作

1 个答案:

答案 0 :(得分:1)

您无法通过命令行覆盖name参数。您需要为name配置参数添加配置属性,并在命令行上覆盖它。

...
<properties>
    <deployment.name>${project.build.finalName}.${project.packaging}</deployment.name>
</properties>
...
<plugin>
    <groupId>org.wildfly.plugins</groupId>
    <artifactId>wildfly-maven-plugin</artifactId>
    <version>1.1.0.Alpha7</version>
    <configuration>
        <name>${deployment.name}</name>
    </configuration>
</plugin>
...

然后在命令上你可以使用-Ddeployment.name=myapp。但需要注意的是,您需要使用适当的文件扩展名,例如: .war,因此部署将得到妥善处理。