2012-01-18 94 views
2

我們當前的升級應用程序的過程是取消部署當前版本,然後部署新創建的EAR過程。 我見過有「自動更新」功能的軟件(比如Spring Tools Suite)。該軟件自動下載更新的文件並執行自我升級。無需再次下載完整的安裝程序並卸載/安裝應用程序。Java EE企業應用程序的自動升級

我只是想檢查Java EE Web應用程序是否存在類似的東西?

+0

這在很大程度上取決於你使用的應用程序服務器上。 – 2012-01-18 08:31:54

+0

@Tichodroma:現在我們使用JBoss 4.x/5進行部署,但我希望解決方案可以在任何應用服務器上工作(如果可能的話)。 – user1068991 2012-01-18 08:37:19

回答

2

今天許多服務器都支持熱部署,您可以在其中部署應用程序。 這當然仍然需要從任何地方拉應用程序的功能。至少在JBoss 4中(我認爲它也可用於5),你可以告訴部署掃描器觀察多個目錄,因此它可以監視例如一個共享驅動器,當你把應用程序放在那裏時,它會看到它並把它拿起來。

+0

感謝您的指針!順便說一下,保持部署掃描程序在生產系統上運行可以嗎? (從性能/安全角度) – user1068991 2012-01-18 08:57:46

2

在運行時重新部署代碼的正確方法是使用OSGi。這是一個爲了自動依賴解析而創建的系統。它允許例如因爲您要繼續爲現有連接運行較舊的代碼,同時將新代碼用於新連接。

它還允許您鏈接到自動加載的更新版本的庫。

https://docs.jboss.org/author/display/AS7/Helloworld+OSGi+quickstart一個不錯的快速入門使用OSGi與JBoss 7

+0

「正確的方式」是有爭議的:) – 2012-01-18 08:53:26