2013-07-08 77 views
0

我希望減少等待每次更新其中一個jar時在WebSphere上反彈EAR應用程序所用的時間。無論如何,我可以在不停止/啓動的情況下刷新爲特定EAR加載的課程/罐子嗎?刷新EAR的WebSphere類路徑

WAS 7.0,在我的EAR裏面有兩個WAR。爆炸的EAR根目錄包含這些和所有必需的罐子。這是我想更新的其中一個罐子。

+0

這在其他應用程序服務器上經常被稱爲熱部署(通常具有爆炸jar/war/ear)。 –

+0

是嗎?根據http://publib.boulder.ibm.com/infocenter/wsdoc400/v6r0/index.jsp?topic=/com.ibm.websphere.iseries.doc/info/ae/ae/trun_app_hotupgrade.html熱部署是指無需重新啓動整個應用程序服務器。如果可能,我想削減部署的EAR重啓。 – user1561108

+0

真的嗎?這聽起來就像正常的重新部署。對於開放源代碼應用程序服務器,可以監視和重新加載這些類型的應用程序資源。但請注意,應用程序服務器可能太笨了,除了重新部署EAR之外,無法處理「哦,新的jar」。請注意,您可能會以不同的方式打包您的耳朵以幫助應用服務器(有些東西會爆炸,有些不會) –

回答

0

你有兩個選擇:

  1. 運行在調試模式下的服務器,從您的IDE連接調試,並依靠修改的類的熱交換進行。這在所有情況下都不起作用,例如,當方法簽名發生變化時它不會起作用。請檢查Debugging applications如何啓用調試模式。

  2. 不要打包要在JAR內更新的類,但要將其放入WAR中的WEB-INF/classes目錄中。然後,您可以根據需要在應用程序的展開目錄中替換它們。爲了服務器拿起更新的類Class loading and update detection必須啓用。