2012-02-09 36 views
2

我已经配置在Maven的插件,如下图所示:的JBoss AS 7自动部署插件无法连接到本地主机:8080

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

然后我用用

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应用服务器版本7.0.2 Maven的版本是3.0.4

回答

5

默认情况下,端口8080不是管理端口。该插件要求您使用默认情况下9999的管理。

此外,您的文件名元素不太正确。在开始处添加目标将导致找不到该文件。

插件在构建目录中默认查找文件名。在大多数情况下,甚至不需要使用文件名元素。该插件会默认文件名为${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> 
+0

谢谢@詹姆斯。你说得对,我正在使用错误的端口号。你的文件名也是正确的,因为我必须按照你的描述改变它。 - 谢谢 – ziggy 2012-02-10 09:09:56

+1

@ziggy没问题。我很高兴它为你工作。 – 2012-02-10 16:52:38

4

根据这一page,你不应该指定网络端口(8080),但管理端口(默认为9999),其中是用于部署的一个。

0

我有一个非常类似的情况,通过简单的编辑standalone.xml文件,添加适当的socket-binding管理界面解决了这个问题。

你可以在my blog查看更多。