运行在32位机器上编译并在64位机器上运行的Java应用程序是否存在已知问题?在64位操作系统上针对32位操作系统运行时问题编译的Java
3
A
回答
7
由32位JDK生成的字节代码与由64位JDK生成的字节代码相同。如果您的问题只发生在64位JVM上,是因为JVM中存在一个错误,并且使用64位JDK不会产生任何影响。
2
0
没有我能想到的,除非你明确地调用特定于环境的32位本地代码。
像Windows这样的操作系统使用WoW64允许32位应用程序在64位系统下运行。这是一项允许向后兼容的规定。只要本地库只依赖于32位或仅在64位库上,一切都很好。 JVM负责使用JIT将字节码转换为适当的机器码,所以不用担心。
3
Java背后的思想是程序的字节码版本对于所有平台都是相同的。这就是为什么您可以在Windows机器上编译并在Linux机器上运行生成的类和jar文件的原因。我每天都在做这样的交叉编译。
这包括JVM使用32位还是64位。
所以,简单的答案是没有,没有问题
(更先进的回答是,如果你也使用您带来您的Java代码,非Java本机代码,如DLL那么这段代码很可能需要重新编译)
相关问题
- 1. 32位/ 64位操作系统?
- 2. 在32位操作系统上运行64位jvm
- 3. 64位操作系统上的32位ActiveX DLL的问题
- 4. 确定从32位操作系统或64位操作系统C/C++应用
- 5. 对32位系统中的64位字进行操作
- 6. 使用arm v8运行32位和64位操作系统
- 7. 64位操作系统上的32位VC++可再发行?
- 8. 在64位架构上的32位操作系统
- 9. JNA在64位操作系统上具有32位JVM
- 10. 在64位操作系统上调试32位CASSINI(Oracle 9)
- 11. 在64位服务器上加载32位dll操作系统
- 12. 在64位操作系统上启动32位进程
- 13. VM Virtual Box 64位硬件上的32位操作系统
- 14. 在64位操作系统上运行的32位程序内存消耗
- 15. 在64位操作系统上以32位身份运行AnyCPU应用程序
- 16. 在Windows7 32位操作系统上的铬生成错误操作系统
- 17. 在32位操作系统中使用64位dll
- 18. 开在64位操作系统32位Visual C#项目
- 19. 32位DLL不能在64位操作系统
- 20. 64位操作系统上的32位或64位应用程序?
- 21. 32位应用程序的64位操作系统
- 22. 如何检测Flex中的32位或64位操作系统?
- 23. 关于64位和32位的Mac操作系统
- 24. 上运行64位操作系统给ERROR 64位操作系统Android的工作室:32位Linux的Android模拟器的二进制文件已被弃用
- 25. Raspberry Pi的64位操作系统3
- 26. 64位操作系统的Microsoft.Win32.RegistryKey
- 27. 32位dll 64位操作系统与regsvr32.exe
- 28. Environment.GetEnvironmentVariable检查操作系统版本32位/ 64位
- 29. 如何在64位操作系统上执行汇编程序?
- 30. 32位操作系统上的2^32位或字节
不需要,除非你做了一件傻事 – Petesh
嗨,Petesh,你能更具体地说明你的意思是什么“愚蠢”吗? – Paul
从32位虚拟机编译的代码应该没有问题,而不是从64位虚拟机编译的问题。傻瓜正在做一些特定平台。 – Petesh