我有 java EE 工件,如 .jar 、 .war 、 .ear 文件在 java 1.6 版本中編譯和運(yùn)行。我想在最新的 Java 版本(如 Java 1.8)中運(yùn)行它們(.ear 文件 [.jar + .war])??紤]到遷移到新的 Java 版本,哪個選項(xiàng)是最好的。1) 在 1.8 中重新編譯代碼并部署到應(yīng)用程序服務(wù)器- 更安全一些。2) 只需部署到 java 1.8- 不需要代碼編譯(意味著使用 java 1.6 生成的 .ear 文件)。.ear 文件可以安全地部署到最新的 java 1.8 版本- 也許我們最終不會遇到運(yùn)行時問題?因?yàn)檫@是一個生產(chǎn)代碼庫,沒有開發(fā)人員。因此在任何一種情況下都沒有代碼更改,唯一的更改是 java 版本。我更喜歡使用 Option-1,因?yàn)樵诟甙姹镜默F(xiàn)有 Java 類中進(jìn)行編譯以避免任何運(yùn)行時問題。有什么想法嗎 !或在這方面的其他有用選項(xiàng)。
2 回答

溫溫醬
TA貢獻(xiàn)1752條經(jīng)驗(yàn) 獲得超4個贊
正如@Stultuske 提到的,你只告訴在任何一種情況下都不能更改代碼,那么你的第一個案例就不是一個有效的案例。
但無論如何,根據(jù) java(Oracle) 兼容性規(guī)范,Java 8 向后兼容以前的版本,除了一些非常罕見的二進(jìn)制不兼容情況外,毫無疑問。
有關(guān)這方面的更多信息,您可以參考下面的堆棧溢出鏈接——

慕森王
TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超3個贊
最近我做了類似的事情,但如果需要,我們更新了代碼/依賴項(xiàng)。
我建議首先重新編譯代碼庫,因?yàn)檫@會很快告訴您它或任何依賴項(xiàng)是否不支持較新的 Java 版本。如果編譯成功,則部署到測試環(huán)境并執(zhí)行健全性、回歸等。
我希望你不是在談?wù)撝苯硬渴鸬缴a(chǎn)環(huán)境:)
添加回答
舉報(bào)
0/150
提交
取消