2015-06-27 35 views
0

我的maven項目已配置爲在本地glassfish服務器上運行。當我對Java類或JSP文件進行更改時,它會自動部署。但是,如果我將相同的項目配置爲在遠程服務器上運行,當我點擊保存按鈕時,它不會自動部署任何內容,我必須手動點擊「運行」按鈕。使用Netbeans在遠程服務器上進行熱部署

有什麼我做錯了嗎?

謝謝!

回答

2

沒有這樣的方式。

熱代碼替換在IDE中工作,因爲它可以控制java進程和類加載。一旦進入遠程機器,進程就不能再由IDE控制。

根據您使用的框架(Spring,JPA,...),甚至熱代碼替換可能沒有預期的效果,因爲這些框架需要在啓動過程中進行初始化。

JDK本身僅支持某種更改。簽名更改通常不會重新加載或添加靜態方法。

如果您需要更好的熱碼重新加載支持,您可以嘗試JRebel。它是一個商業工具,但它支持更多的重新加載的變體,並且還有一些框架支持。

我讀過關於在生產服務器上使用它的公司。

與maven相關,您只需注意,如果maven部署.war或.ear文件,它也不受IDE控制(或者具有更強的限制)。這通常是讓IDE在本地執行工作的最佳方式。

+0

謝謝!我現在知道了。 – Inpu

相關問題