我繼承尚未升級的一個很老的應用程序,因爲它依賴於第三方庫是依賴於Java的4的Java虛擬機6至調用Java VM 4
擺脫這種第三方圖書館不會在不久的將來發生,因爲系統的關鍵部分依賴於它。
我想將Java版本的應用程序更新爲最新版本,並且正在考慮將相關jar移動到它自己的VM中,然後在Java 6/7 VM和Java 4 VM之間進行某種調用。
首先想到的是使用RMI。顯而易見的第一個問題是使用不同的Java版本時,VM之間的兼容性。第三方lib產生字節流,所以返回的數據不會被串行化影響。如果兼容性是一個問題,傳入的數據可以被處理成可傳遞的數據。
這是正確的路嗎?
有沒有更好的方法?
我覺得如果你不能真正移除Java 4的依賴關係,那麼你會浪費你的時間 - 你會獲得很少的安全性和大量的開銷。什麼是真正的錯誤,Java是向後兼容的 - 也許你可以包裝第三方庫,以便它可以在Java 6下運行? – 2013-03-03 20:16:29
RMI是一個不錯的選擇。這可能是最簡單的選擇,從您對第三方庫的描述中,似乎不值得花費更多的努力。 – VGR 2013-03-03 20:36:52