将JDK从32位升级到64位

时间:2014-07-17 02:53:20

标签: java

我有一个使用在Windows Server 2008(32位)上运行的JDK 1.7的程序。如果我想将程序重新部署到最新的Windows Server(64位),我是否需要重写程序或只是稍微改一下?

非常感谢!

2 个答案:

答案 0 :(得分:1)

简短回答

,您不应该需要更改您的代码。你甚至不需要重新编译它。只需运行你的JAR /类就可以了。

您没有提供有关您的申请的详细信息,因此我请您阅读详细解答以获取更多信息,因为有些注意事项可能会对您有所帮助。

答案很长

Java编译器生成bytecodes,稍后由JVM解释。 JVM将字节码转换为本机命令。 JVM将执行“艰苦工作”,同时您可以专注于单个程序。 Java平台是独立于平台的,因此如果从32位到64位Windows,则不需要更改代码。

与往常一样,有一些例外,超出了32/64位的情况。我将列举一些例如:

  • 在处理持久性时,Linux和Windows中断行(MS文件通常有回车符)
  • 使用JNI使用本机库(这可能会影响32/64位程序)
  • 在不同操作系统上使用的字体
  • 也许是一些Java bug,但非常不可能

作为一般惯例,如果您要跨平台运行应用程序,请尝试查找程序的“边界”。您什么时候在应用程序“外部”寻找特定的操作系统资源?

即使您的程序在应用程序服务器(例如JBoss)中运行,也不需要更改代码。

我认为您的程序无需任何更改即可正常工作,请记住可能会有例外情况。

答案 1 :(得分:0)

我认为你不需要改变任何东西。你通过jni使用任何本机代码吗?

首先,您是在32位Windows上使用JDK还是JRE?您只需要JRE来运行您的应用程序。

其次,在Windows 8上,您仍然可以安装32位JRE,以便运行应用程序。

第三,如果您安装了64位JRE,您的应用程序仍应运行。 64位JRE中可能存在更多错误。如果遇到很多错误,请改用32位JRE。