我已经在maven中配置了插件,如下所示:
<plugin>
<groupId>org.jboss.as.plugins</groupId>
<artifactId>jboss-as-maven-plugin</artifactId>
<version>7.0.2.Final</version>
<configuration>
<hostname>localhost</hostname>
<port>8080</port>
<filename>target/TestApp.war</filename>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>deploy</goal>
</goals>
</execution>
</executions>
</plugin>
然后我使用maven使用
触发它mvn -U clean install package
它确实构建并且一切正常但在启动自动部署时失败。
INFO]
INFO] --- jboss-as-maven-plugin:7.0.2.Final:deploy (default) @ TestApp ---
INFO] Executing goal deploy on server localhost (127.0.0.1) port 8080.
9-Feb-2012 16:18:46 org.jboss.remoting3.EndpointImpl <clinit>
NFO: JBoss Remoting version 3.2.0.Beta2
9-Feb-2012 16:18:46 org.xnio.Xnio <clinit>
NFO: XNIO Version 3.0.0.Beta2
9-Feb-2012 16:18:46 org.xnio.nio.NioXnio <clinit>
NFO: XNIO NIO Implementation Version 3.0.0.Beta2
INFO] ------------------------------------------------------------------------
INFO] BUILD FAILURE
INFO] ------------------------------------------------------------------------
INFO] Total time: 58.768s
INFO] Finished at: Thu Feb 09 16:18:52 GMT 2012
INFO] Final Memory: 7M/18M
INFO] ------------------------------------------------------------------------
ERROR] Failed to execute goal org.jboss.as.plugins:jboss-as-maven-plugin:7.0.2.Final:deploy (default) on project TestApp: Could not execute goal deploy on TestApp.war. Reason: Could not connect to remote://localhost:8080 in 5000ms. Make sure the server is running and/or consider setting a longer timeout by setting -Dorg.jboss.as.client.connect.timeout=<timeout in ms>. -> [Help 1]
ERROR]
ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
ERROR] Re-run Maven using the -X switch to enable full debug logging.
ERROR]
该错误似乎表明它无法连接到localhost:8080上的应用程序服务器。它正在运行,我可以访问它。有任何想法吗?
JBoss Application Server版本是7.0.2 Maven版本是3.0.4
答案 0 :(得分:5)
默认端口8080不是管理端口。该插件要求您使用默认为9999的管理。
你的文件名元素也不太对劲。在开头添加目标将导致找不到该文件。
默认情况下,插件会在构建目录中查找文件名。在大多数情况下,甚至不需要使用filename元素。默认情况下,该插件将假定文件名为${project.build.finalName}.${project.packaging}
,这可能适用于您的情况。
假设您没有更改默认管理端口,您希望它看起来像这样。
<plugin>
<groupId>org.jboss.as.plugins</groupId>
<artifactId>jboss-as-maven-plugin</artifactId>
<version>7.0.2.Final</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>deploy</goal>
</goals>
</execution>
</executions>
</plugin>
答案 1 :(得分:4)
根据此page,您不应指定Web端口(8080),而应指定管理端口(默认为9999),这是用于部署的端口。
答案 2 :(得分:0)
我的情况非常相似,只需编辑standalone.xml
文件即可为管理界面添加正确的socket-binding
来解决问题。
您可以在my blog查看更多信息。