2010-05-03 80 views
10

我正在使用NetBeans 6.8,Tomcat 6和Maven 2.2,並且希望在保存文件後立即在瀏覽器中看到代碼中的更改(顯示http://localhost:8080)。使用Maven和NetBeans在Tomcat上進行增量式熱部署

將tomcat-Maven的插件具有以下配置:

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>tomcat-maven-plugin</artifactId> 
    <version>1.0-beta-1</version> 
</plugin> 

按照它應該執行就地部署的輸出。

如何在瀏覽器中立即查看Java代碼中的更改?

回答

0

使用tomcat:inplace的目標從其編譯的類和源中調用您的web應用程序。

您可能會遇到Windows上的文件鎖定問題。有幾個workarounds,如antiJarLocking contet屬性,但基本上這歸結爲您的web應用程序沒有正確關閉,這將最終耗盡多次重新加載後的虛擬機內存。就我而言,我使用的是Spring,而「正確的」修復方法是在某些關鍵bean上添加一個destroy方法,以便該應用程序正常關機。

Maven Tomcat Plugin - tomcat:inplace

1

我花了很多時間試圖讓這個工作。最後我只用了碼頭。我把這個:

<plugin> 
      <groupId>org.mortbay.jetty</groupId> 
      <artifactId>jetty-maven-plugin</artifactId> 
      <version>${jetty.version}</version> 
      <configuration> 
       <reload>automatic</reload> 
       <scanIntervalSeconds>5</scanIntervalSeconds> 
      </configuration> 
    </plugin> 

也許所有的參數是不正確的,但後來我創建了一個自定義的目標「碼頭:運行」 我使用它。我不能使用大的綠色播放按鈕「運行」,但jetty部署很好,它熱部署Java類中的任何更改。

1

看看JRebel。它應該做你想做的。怕疼。