更改wildfly maven插件

时间:2017-11-16 11:53:50

标签: java maven wildfly maven-plugin wildfly-10

我想使用 wildfly-maven-plugin 将默认HTTP端口更改为8380.通常,我可以更改偏移量,但是this is not working,我的更改会被忽略和HTTP端口在8080继续。

我在同一个maven项目中开始使用wildfly,因为这样更实用(下载并自动启动)。就像那样:

mvn wildfly:run -Dwildfly.version=10.1.0.Final

我的项目包含JAR,WAR和EAR。经典结构。

正如我从另一个SO问题中理解的那样,我需要将插件条目放在每个需要忽略的pom.xml中,将<skip>true</skip>放在:root,WAR和JAR的pom.xml中。就像那样:

<plugin>
    <groupId>org.wildfly.plugins</groupId>
    <artifactId>wildfly-maven-plugin</artifactId>
    <version>1.2.1.Final</version>
    <configuration>
        <skip>true</skip>
    </configuration>
</plugin>

如果我不跳过这些人,Wildfly会尝试部署JAR / WAR / Root,这不是我的目标。我想只部署EAR。

为此,我仅将<skip>false</skip>用于EAR的pom.xml:

<plugin>
    <groupId>org.wildfly.plugins</groupId>
    <artifactId>wildfly-maven-plugin</artifactId>
    <version>1.2.1.Final</version>
    <configuration>
        <skip>false</skip>
    </configuration>
</plugin>

localhost:8080/app/之后运作良好。

但如果我尝试更改偏移量或http端口,则不会发生任何不同的情况。这是我已经尝试<configuration/>但没有成功的一些参数:

<server-args>
    <server-arg>-Djboss.socket.binding.port-offset=300</server-arg>
</server-args>

<jvmArgs>-Djboss.socket.binding.port-offset=300</jvmArgs>

<jvmArgs>-Djboss.http.port=8380</jvmArgs>

有一些影响的变化是:

<serverConfig>standalone.xml</serverConfig>
<server-args>
    <server-arg>-Djboss.socket.binding.port-offset=300</server-arg>
</server-args>
<filename>${project.build.finalName}.ear</filename>

这也改变了端口(jvmArgsdeprecated):

<javaOpts>-Djboss.socket.binding.port-offset=300</javaOpts>

但在这两种情况下都没有部署EAR应用程序......

有什么想法吗?谢谢!

2 个答案:

答案 0 :(得分:1)

最后,我找到了解决方案。

jvmArgs is deprecated。我用过javaOpts:

<plugin>
    <groupId>org.wildfly.plugins</groupId>
    <artifactId>wildfly-maven-plugin</artifactId>
    <version>1.2.1.Final</version>
    <configuration>
        <skip>false</skip>
        <javaOpts>-Djboss.http.port=8380</javaOpts>
        <filename>${project.build.finalName}.ear</filename>
    </configuration>
</plugin>

作品!

您也可以使用:

<javaOpts>
    <javaOpt>-agentlib:jdwp=transport=dt_socket,address=9087,server=y,suspend=n</javaOpt>
    <javaOpt>-Djboss.http.port=8380</javaOpt>
</javaOpts>

为JVM使用多个选项。在上面的这个例子中,我展示了如何使用maven插件包含一个参数来调试Wildfly。

但是当我使用偏移配置时,为什么没有部署EAR仍然是个谜。

答案 1 :(得分:-1)

尽量不要跳过配置:D

<plugin>
    <groupId>org.wildfly.plugins</groupId>
    <artifactId>wildfly-maven-plugin</artifactId>
    <version>1.2.1.Final</version>
    <configuration>
        <port>8380</port>
    </configuration>
</plugin>