possible to force a 64-bit JVM to use 32-bit mode via the argument “-d32”?

依然范特西╮ 提交于 2019-12-17 23:38:31

问题


so I have some 3rd party native library that works only in 32 bit JVM across windows,osx,linux and I need to always enforce the java application to run in 32 bit JVM mode.

What about if the target system only has 64-bit JVM installed, would it be possible to force it to run the java application in 32 bit mode?


回答1:


No.

The preconditions that you specified prohibit (okay, I'm precluding the bundle-the-JVM solution and install-the-JVM solution) the application from running in a 32-bit JRE. If you want to run your application in a 32-bit JVM, and your third party native library is only available as a 32-bit DLL, then you must use a 32-bit JVM. A 64-bit JVM cannot load the 32-bit library; there is no 32-bit mode to load such libraries.

Solutions include:

  • Require the 32-bit JVM to be installed
  • Bundle the 32-bit JVM (the three OS's - that'll be a pretty big burden)
  • Install the 32-bit JVM for the user
  • Use a different third party library / roll your own / find a 64-bit version of the third party library



回答2:


With Java 6, no. With Java 7+, yes.

Use -d32 with Java 7




回答3:


possible to force a 64-bit JVM to use 32-bit mode via the argument “-d32”?

As there is no such argument to the java command, the answer is obviously 'no'.



来源:https://stackoverflow.com/questions/8374193/possible-to-force-a-64-bit-jvm-to-use-32-bit-mode-via-the-argument-d32

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!