我对maven和wildfly有点新鲜。我可以使用eclipse和wildfly-maven-plugin在127.0.0.1:8080/myapp上成功部署我的应用程序但是我想将它部署在我的机器的IP地址(192.168.0.101)上,这样我就可以从另一台计算机访问它了。我的POM看起来像这样:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.vch.apps</groupId>
<artifactId>myapp-chat</artifactId>
<packaging>war</packaging>
<version>1.0</version>
<name>vch-myapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.0.13</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.3</version>
</dependency>
</dependencies>
<profiles>
<profile>
<id>profileIP</id>
<build>
<finalName>myapp</finalName>
<plugins>
<plugin>
<groupId>org.wildfly.plugins</groupId>
<artifactId>wildfly-maven-plugin</artifactId>
<version>1.0.1.Final</version>
<configuration>
<jbossHome>/usr/local/wildfly-8.0.0.Final</jbossHome>
<!--hostname>192.168.0.101</hostname>
<port>8080</port-->
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
如果我执行wilfly:从eclipse运行并在Eclipse的Profiles框中指定profileIP,我下载并解压缩到'/usr/local/wildfly-8.0.0.Final'的wildfly将从127.0.0.1开始: 8080和我的应用程序将部署到此地址。 如果我取消注释主机名和端口元素,我的应用程序仍然部署在localhost上。
有没有办法使用maven插件在hostname元素中指定的ip上部署我的应用程序,还是需要更改wildfly文件夹中的配置文件?我只下载了wildfly并解压缩它,并没有添加任何野生服务器到eclipse。
答案 0 :(得分:2)
您似乎可能想要使用deploy
目标。正如您所说,run
目标可以选择下载WildFly,启动它并部署您的应用程序。如果您使用了指定的主机名和端口,它实际上也应该失败。如果它听起来不像是一个错误。
在WildFly端,如果要启动服务器以使其在不同的IP上运行或者所有IP都可访问,则在启动standlone服务器时需要使用-b
选项。默认情况下,可以通过系统属性jboss.http.port
覆盖端口。
以下内容将启动WildFly在所有可用IP上的端口80上进行侦听。
$JBOSS_HOME/bin/standalone.sh -b 0.0.0.0 -Djboss.http.port=80
上述设置仅为临时设置,仅限HTTP设置。默认管理侦听localhost上的端口9990。您可以在documentation中获得有关接口和端口的更多信息。
答案 1 :(得分:0)
我设法通过为wildfly用户控制台添加用户(使用add-user.sh)来执行我想要的操作:127.0.0.1:9990/console/
在控制台中,我去了Porfile - &gt;一般配置 - &gt;接口并将公共接口的Inet地址更改为:$ {jboss.bind.address:192.168.0.101}这是我本地计算机的网络IP。我没有对我的POM进行任何更改,现在我可以执行widlfy:运行并指定profileIP来启动我的wildfly服务器并部署我的ap: 192.168.0.100:8080/myapp。
答案 2 :(得分:0)
您必须使用配置文件和pom.xml正确配置settings.xml文件,以便在命令行上读取配置文件。有关详细信息,请参阅此post