2010-09-18 39 views
0

我突然遇到了一個奇怪的問題,我爲什麼會出現這種情況。Tomcat 6.0.26緩存Java類

我的基本設置是使用maven(eclipse插件0.20),Tomcat 6.0.26。

直到幾天前我能夠以調試模式啓動tomcat,在調試和測試代碼時進行更改。然後爲maven運行prepare-package,停止並啓動tomcat以反映更改。

但是自從幾天以來,debug選項停止工作,eclips沒有正確加載類的更改。我最初認爲這是一個調試問題,但後來即使我停止了tomcat,運行了一個準備軟件包並啓動了tomcat,我的班級變更也沒有顯示出來。

我通常在eclipse中將構建自動保持爲真,它將類文件寫入目標/類,maven將其複製到tomcat讀取它的WEB-INF /類。切換此選項有助於準備包僅在有時才起作用。

我不知道這可能是我的maven插件或tomcat做一些更類的緩存的問題。這些不是servlet或JSP,而是普通的java類。

想知道,如果有人看到了這種問題,或只是我的機器給我找麻煩

+0

如何啓動Tomcat? WTP?貨物?外部?您是否使用Workspace解決方案? – mhaller 2010-09-18 22:37:55

+0

我使用catalina jpda start命令從命令行啓動tomcat – Fazal 2010-09-19 07:40:20

+0

呵呵,您正在使用調試器替換熱代碼。這取決於班級是否可以被替換,例如簽名保持不變 – mhaller 2010-09-19 14:15:21

回答

0

你可以寫一個小型Web應用程序,它從月食,調試部署到tomcat的話,修改代碼,看看如果它的自動部署..它的工作原理,你可以嘗試刪除你的eclipse項目,並重新導入和重建它

0

這個問題是resoved。我的應用程序有兩個具有不同版本的相同類(相同包層次結構)的jar(一些內容但名稱不同)。所以當我試圖調試時,它正在選擇一個較舊的。我刪除了舊的jar,問題就解決了。

謝謝