2012-09-25 83 views
8

因此,我想要做的就是配置maven plugin jetty以運行多個 - 在我的情況下,兩個不同端口和不同應用程序的jetty服務器實例。如何使用maven運行jetty的多個實例

所以,我想有這樣的:

localhost:8080/webapp1 
localhost:8081/webapp2 

而且我想用一個簡單的命令來做到這一點:命令mvn碼頭:運行 這當然意味着我必須配置它的pom.xml

我已經有了兩個不同的碼頭配置文件:jettyA.xml和jettyB.xml,其中定義了不同的連接器。 問題是隻是我不知道如何做到這一點與一個pom.xml

我試過兩個配置文件,但以某種方式沒有工作。 剛剛提到的最後一個配置文件中的碼頭已經啓動。

<port>${jetty.port}</port> 

然後使用下面的命令運行行家:

+0

這可能有助於... http://stackoverflow.com/questions/5519066/possible-to-run-two-webapps-at-once- when-development-with-maven-eclipse – ramsinb

回答

8

由屬性變量這樣替換的pom.xml端口號

mvn jetty:run -Djetty.port=8081 

要定義默認端口NUMER,添加此默認屬性爲您的pom文件:

<properties> 
    <jetty.port>8080</jetty.port> 
</properties> 

如果您需要任何更高級的方法終止端口號碼,您需要將碼頭嵌入主類。

+0

是的..我知道如何設置碼頭服務器的端口..如果我運行碼頭從兩個不同的項目,每個它自己的POM.XML我可以做我所描述的.. 。但是我想在一個只有ONE POM.XML文件的新項目中這樣做...所以我不知道如何在這個ONE POM.XML中設置兩個不同的jetty.xml文件 – Johnny

1

OK,我解決了這個像這樣...

我有兩個不同的配置文件之一pom.xml文件。 然後我寫了一個sh腳本..我在其中運行的兩個配置文件是這樣的:

mvn jetty:run-war -Pprofile1 & 
mvn jetty:run-war -Pprofile2 

在每個配置文件我有它自己的配置文件(jettyA.xml,jettyB.xml)在至極有定義的兩個服務器在不同的端口 - 與不同的應用程序。

現在我所要做的就是運行一個SH腳本,就是這樣。

2

這是我整理了上述問題

1)轉到您運行方式 - >運行配置調試配置 Eclipse或STS (我用STS)

2)則對話框將會出現&在左側菜單中雙擊該Maven構建

3)根據名稱文本相右側的頂端輸入Anyname要 例如: - Jetty_Server

4。)下面選擇瀏覽工作​​區然後選擇要清理intall &運行與碼頭服務器(我想你已經在你的POM文件添加碼頭插件)

5)下方目標文本框中輸入您的項目下面行(你可以使用8020或8065或任何端口)

clean install -Djetty.port=8020 jetty:run 

6)然後配置行家運行時(選擇安裝在您的maven文件夾)

7)然後申請 - >運行/調試