簡體   English   中英

將JDK從32位升級到64位

[英]upgrade JDK from 32 bit to 64 bits

我有一個使用Windows Server 2008(32位)上運行的JDK 1.7的程序。 如果我想將該程序重新部署到最新的Windows Server(64位),是否需要重寫該程序,或者可以稍作更改嗎?

非常感謝!

簡短答案

,你不應該需要改變你的代碼。 您甚至不需要重新編譯它。 只需運行您的JAR /類,它就可以正常工作。

您沒有提供太多有關應用程序的詳細信息,所以我請您閱讀詳細的答案以獲取更多信息,因為將來有一些注意事項可能會對您有所幫助。

長答案

Java編譯器生成字節碼 ,然后由JVM解釋。 JVM將字節碼轉換為本地命令。 JVM將進行“艱苦的工作”,而您可以專注於一個程序。 Java平台是獨立於平台的,因此,如果您要從32位Windows變為64位Windows,則無需更改代碼。

與往常一樣,有一些例外 ,超出了32/64位的情況。 我將列舉一些例子:

  • 在進行持久性處理時,Linux和Windows中的換行符(MS文件通常帶有回車符)
  • 使用JNI消耗本機庫(這可能會影響32/64位程序)
  • 在不同操作系統上使用的字體
  • 也許是一些Java錯誤,但是非常不可能

通常,如果要跨平台應用程序,請嘗試查找程序的“邊界”。 您什么時候可以“外出”您的應用程序來尋找特定的OS資源?

即使您的程序在JBoss之類的應用程序服務器中運行,您也無需更改代碼。

我認為您的程序無需進行任何更改即可正常運行,請牢記可能會應用例外情況。

我認為您無需更改任何內容。 您是否通過jni使用任何本機代碼?

首先,您是在32位Windows上使用JDK還是JRE? 您只需要JRE即可運行您的應用程序。

其次,在Windows 8上,您仍然可以安裝32位JRE,以便您的應用程序可以運行。

第三,如果安裝了64位JRE,則應用程序仍應運行。 64位JRE中可能會有更多錯誤。 如果遇到很多錯誤,請改用32位JRE。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM