我有一个使用在Windows Server 2008(32位)上运行的JDK 1.7的程序。如果我想将程序重新部署到最新的Windows Server(64位),我是否需要重写程序或只是稍微改一下?
非常感谢!
答案 0 :(得分:1)
简短回答
否,您不应该需要更改您的代码。你甚至不需要重新编译它。只需运行你的JAR /类就可以了。
您没有提供有关您的申请的详细信息,因此我请您阅读详细解答以获取更多信息,因为有些注意事项可能会对您有所帮助。
答案很长
Java编译器生成bytecodes,稍后由JVM解释。 JVM将字节码转换为本机命令。 JVM将执行“艰苦工作”,同时您可以专注于单个程序。 Java平台是独立于平台的,因此如果从32位到64位Windows,则不需要更改代码。
与往常一样,有一些例外,超出了32/64位的情况。我将列举一些例如:
作为一般惯例,如果您要跨平台运行应用程序,请尝试查找程序的“边界”。您什么时候在应用程序“外部”寻找特定的操作系统资源?
即使您的程序在应用程序服务器(例如JBoss)中运行,也不需要更改代码。
我认为您的程序无需任何更改即可正常工作,请记住可能会有例外情况。
答案 1 :(得分:0)
我认为你不需要改变任何东西。你通过jni使用任何本机代码吗?
首先,您是在32位Windows上使用JDK还是JRE?您只需要JRE来运行您的应用程序。
其次,在Windows 8上,您仍然可以安装32位JRE,以便运行应用程序。
第三,如果您安装了64位JRE,您的应用程序仍应运行。 64位JRE中可能存在更多错误。如果遇到很多错误,请改用32位JRE。