簡體   English   中英

jboss-as-maven-plugin無法部署到遠程JBoss AS7?

[英]jboss-as-maven-plugin can't deploy to remote JBoss AS7?

我已經嘗試了幾天使用jboss-as-maven-plugin將Web項目部署到遠程JBoss AS7,但它沒有用。

這是我的pom.xml

<!-- JBoss Application Server -->
<plugin>
    <groupId>org.jboss.as.plugins</groupId>
    <artifactId>jboss-as-maven-plugin</artifactId>
    <version>7.1.0.CR1b</version>
    <executions>
        <execution>
            <phase>install</phase>
            <goals>
                <goal>deploy</goal>
            </goals>
            <!-- Only remote server needs -->
            <configuration>
                <hostname>192.168.1.104</hostname>
                <port>9999</port>
                <username>admin</username>
                <password>admin123</password>
            </configuration>
        </execution>    
    </executions>
</plugin>

使用此配置,我可以在沒有<configuration>情況下部署到localhost ,甚至沒有<username><password>

要部署到我的真實IP地址,我修改了$ {JBOSS_HOME} /configuration/standlone.xml ,將jboss.bind.address127.0.0.1更改為0.0.0.0 (取消綁定JBoss地址),這樣我就可以使用部署項目了:

<configuration>
    <!-- 192.168.1.106 is my ip -->
    <hostname>192.168.1.06</hostname>
    <port>9999</port>
</configuration>

它也可以工作,但通過將<hostname>更改為指向我的另一台計算機(在同一台路由器中),它不起作用,但該計算機收到請求,並且請求被某些內容刪除。 (我認為它可能是JBoss)

Maven控制台中的錯誤消息如下:

 INFO: JBoss Remoting version 3.2.0.CR8
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 30.572s
[INFO] Finished at: Fri Feb 10 23:41:25 CST 2012
[INFO] Final Memory: 18M/170M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.jboss.as.plugins:jboss-as-maven-plugin:7.1.0.
CR1b:deploy (default) on project MessagePushX-RELEASE: Could not execute goal de
ploy on MessagePush.war. Reason: java.net.ConnectException: JBAS012144: Could no
t connect to remote://192.168.1.104:9999. The connection timed out -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit
ch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please rea
d the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

誰能告訴我JBoss是不是7.1.0不允許遠程部署?

對於一些安全問題?

這絕對不是一個安全問題。

您引用的插件使用JBoss AS7能力使用Server Deployment Manager部署應用程序(這是AS7中的新功能)。 以前只能通過JMX控制台進行部署,這需要服務器(本地文件或URL)可以訪問部署工件。

你需要確保:

  • 192.168.1.104運行JBoss AS7,服務器部署管理器偵聽端口9999。
  • 端口不應綁定到localhost iface(不是127.0.0.0:9999但是*:9999)。
  • 您和192.168.1.104之間沒有防火牆拒絕數據包到端口9999。

對我有用的是從jboss-as插件更改為wildfly插件:

 <plugin>
   <groupId>org.wildfly.plugins</groupId>
   <artifactId>wildfly-maven-plugin</artifactId>
   <version>1.1.0.Alpha8</version>
 </plugin>

然后使用maven命令:

mvn wildfly:deploy

參考: https//issues.jboss.org/browse/WFLY-3684

對我來說,在使用hostname參數“127.0.0.1”配置插件時,它可以工作,因為默認情況下服務器似乎綁定到該IP:

        <plugin>
            <groupId>org.jboss.as.plugins</groupId>
            <artifactId>jboss-as-maven-plugin</artifactId>
            <version>7.3.Final</version>
                <configuration>
                  <hostname>127.0.0.1</hostname>
                </configuration>
        </plugin>
    </plugins>
</build>

我使用最新版本的插件解決了這個問題:

<plugin>
  <groupId>org.jboss.as.plugins</groupId>
  <artifactId>jboss-as-maven-plugin</artifactId>
  <version>7.5.Final</version>
</plugin>

遠程部署肯定有效。

  1. 如上所述,確保管理端口(本機)綁定到* .9999。

     <socket-binding name="management-native" interface="management" port="${*:9999}"/> 
  2. 確保您已將用戶添加到管理領域。 此外,我注意到密碼在我第一次運行插件時被緩存,所以稍后它會繼續使用陳舊密碼(從第一次運行)而不是新密碼。 我注意到這是使用mvn -X選項。

  3. 我還關閉了jboss服務器主機上的防火牆。 至少必須打開端口8787,4447,8080,9990。

這是完整的插件聲明

<plugin>
    <groupId>org.jboss.as.plugins</groupId>
    <artifactId>jboss-as-maven-plugin</artifactId>
    <version>7.6.Final</version>
    <executions>
        <execution>
            <goals>
                <goal>deploy</goal>
            </goals>
            <phase>install</phase>
        </execution>
    </executions>
    <configuration>
        <force>true</force>
        <hostname>IP</hostname>
        <port>9999</port>
        <username>mvndeploy</username>
        <password>pa##word1.</password>
        <filename>${project.build.finalName}</filename>
    </configuration>
</plugin>

測試每一個:

mvn package jboss-as:deploy

對我來說,工作將maven插件的版本更改為更新版本:

 <version>7.1.0.Final</version>

當我通過使用IntelliJ得到相同的錯誤時,我從JBoss服務器取消部署項目並再次部署它工作正常。

使用wildfly-maven-plugin而不是jboss-maven-plugin。

這個問題通常是由於你的JBOSS的綁定地址而發生的,如果你看看standlone.xml的jboss管理綁定地址是

jboss.bind.address.management:127.0.0.1

您可以將其更改為機器IP地址或將其指向0.0.0.0

jboss.bind.address.management:0.0.0.0/machine IP

重啟JBOSS並嘗試mvn jboss插件應該像魅力一樣工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM