2013-01-23 48 views
2

如果我有一個Java文件test.java,並使用Eclipse運行它,並且需要很長時間來處理,我怎麼能夠修改test.java並運行另一個實例它在同一時間嗎?應該有一個test.class文件,但Eclipse似乎在運行時緩存舊的文件,對吧?Eclipse如何管理不同的運行Java類

回答

5

程序運行時,類文件已被類加載器加載到內存中。因此,VM不再需要.class文件。因此,如果文件系統上的.class文件發生更改,則不會出現問題。

1

如果我有一個java文件test.java,並使用Eclipse中運行它,它 需要很長時間來處理,怎麼來的,我能夠修改test.java 和運行它的另一個實例中的同時?應該有一個 test.class文件,但eclipse似乎緩存它運行時的舊版本, 對不對?

這不是一般真正,除非你有自動生成項目和/或熱代碼部署關閉。 Eclipse中源文件的兼容更改將傳播到已加載相同類的任何調試會話,除非類簽名本身發生更改。

但是,是的,Eclipse中的每個調試會話都是自己的進程,並帶有自己的類加載器。