2016-09-13 121 views
0

在GlassFish 4.1中部署了一個EAR模塊後,我發現它似乎已經加載了某些類的以前版本。看起來GlassFish正在緩存以前的類。 GlassFish可能保留舊類的緩存嗎?未部署的模塊仍在GlassFish中

回答

0

是的,這是很有可能的,特別是在Windows中。其中一些問題(在Windows和一些Linux文件系統中)的原因是如何處理文件句柄。通常,這不會阻止在Linux中卸載類,但通常可以在Windows中使用。

爲了100%確定在取消部署後刪除了類,請重新啓動GlassFish。

Payara Server在過去一年左右的時間裏已經包含了一些關於取消部署的修復程序,所以如果您仍然遇到問題,您可能需要嘗試。

+0

我使用Linux,並在ebro取消部署後重新啓動服務器。你已經提到它是如何文件hadler delt。如果是的話,Payara服務器可以做得更好嗎? – Lakshi

+0

如果您使用的是Linux並且已經重新啓動服務器,那麼這不太可能是我描述的問題。你如何構建和部署你的檔案?例如。你是否正在運行maven目標'clean'和'install'? – Mike

+0

是的,我正在運行marven clean並與jenkins一起安裝。我檢查了我升級版本的jar文件,最新版本在那裏。在我第二次再次重申服務器之後,它是正常的。這幾乎不可能弄清楚發生了什麼。 (現在這種情況已經發生過),這就是爲什麼我對這件事很好奇 – Lakshi