2012-11-25 31 views
1

如何在服務器啓動後立即運行Maven? 服務器運行後,是否可以使用cron執行腳本?或者這是一種不好的做法? 我正在使用Jetty和Resteasy並在Maven上運行它們來啓動我的網絡服務器。如何在啓動時作爲守護程序或獨立運行Maven

當我的服務器啓動時,Maven自動啓動的最佳解決方案是什麼? 該命令使用方法是:

mvn jetty:run -e 

編輯: 我使用Amazon EC2上啓動一個實例,我想有Maven構建儘快實例啓動運行。 Maven構建並運行Resteasy,Jetty以及pom.xml文件中陳述的一系列其他依賴項。

+0

Reza,在你的服務器啓動後,你希望Maven爲你做什麼?碼頭:運行將開始運行在端口8080碼頭。檢查插件頁面的更多信息:http://docs.codehaus.org/display/JETTY/Maven+Jetty+Plugin – mhshams

+0

會更簡單的使用像詹金斯這樣的東西來運行你的Maven使用Jenkins API構建並在啓動時調用Jetty作業? –

+0

謝謝@mohammadshamsi請在編輯問題上看看。技術上,當我使用Maven並運行mvn碼頭時:運行-e服務器以我的shell上的所有配置啓動。但是我想把它作爲守護進程或運行mvn碼頭:在啓動時運行-e,這樣我就不必手動連接到服務器並運行命令。 – Reza

回答

0

你可以使用你的操作系統特定的init腳本方法。 Ubuntu操作系統的一個很好的答案可以在here找到。

0

通常,您使用Maven作爲構建工具,而不是部署工具。

你想完成什麼?如果你只是想啓動Jetty,它會附帶自己的init腳本,如果啓用它們,它將在啓動時啓動它。

除非有令人信服的理由爲此使用Maven,否則我會讓您的Maven構建過程創建一個「可執行單元」,例如可執行JAR,WAR等,然後在啓動時啓動它。

+0

我使用Maven進行部署的原因基本上是:我們正在亞馬遜上部署大量計算機,並且構建(代碼)更改頻繁(每小時)。這個概念就是我們想要在雲上運行時演變代碼。 – Reza

+0

我會建議使用Jenkins或一些類似的工具來構建,分發這些,並運行完成的構建。更容易跟蹤到底發生了什麼。 –

相關問題