http://www.cloudhadoop.com/2012/01/find-out-32-bit-jvm-version-or-not-in.html
I have encountered one of the issue with java installation which is not combatable with my 32 bit machine.
32 bit is 4 bytes of size, where as 64 bit is 8 bytes of size. That means 64 bit takes more memory than 32 machines
Most of the times, if your code is complied with 32 bit jdk version, then you need to execute this class files in 32 bit machine/64 bit machine only. This will complies and executes fine, but in some cases if there is machine specific , you are in trouble with issues,so careful while installing jdk versions.
32 bit JVM is not compatible with other 64 bit hosts/frameworks as i have encountered issues tomcat 64 bit on java 32 bit
I am listing down the ways to find out the 32 bit vs 64 bit
As per Sun Specification "There is no public API to find out the 32 bit or 64 bit".
There are number of ways to find out the 32bit version or not.
One way is as "sun.arch.data.model" is one of the system property in JVM which has 32 bit or 64 bit or unknown, so we have to write a simple program to read the property value
So i have written sample code to find out bit version
public class BitVersionDemo { public static void main(String args[]) { System.out.println("version =" + System.getProperty("sun.arch.data.model")); } }
version =32that means your installed jdk is 32 bit
bash-3.2$ java -d32 -version Running a 32-bit JVM is not supported on this platform.
-bash-3.2$ java -d64 -version java version "1.6.0_27" Java(TM) SE Runtime Environment (build 1.6.0_27-b07) Java HotSpot(TM) 64-Bit Server VM (build 20.2-b06, mixed mode)