Just faced with strange issue. When i type
java -version
i got
Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.
.
java -Xms64m -Xmx64m -version
This command works fine
java version "1.6.0_24"
Java(TM) SE Runtime Environment (build 1.6.0_24-b07)
Java HotSpot(TM) Client VM (build 19.1-b02, mixed mode)
If i change xms, xmx to 128m, i get error again.
Using top
command and free -m
i can see, that i got over 192 mb free, so why i still get this error ?
Mem: 262144k total, 64760k used, 197384k free, 0k buffers
Swap: 0k total, 0k used, 0k free, 0k cached
Thank you
According to this post this error message means:
Heap size is larger than your computer's physical memory.
Edit: Heap is not the only memory that is reserved, I suppose. At least there are other JVM settings like PermGenSpace that ask for the memory. With heap size 128M and a PermGenSpace of 64M you already fill the space available.
Why not downsize other memory settings to free up space for the heap?
I had the same problem when using a 32 bit version of java in a 64 bit environment. When using 64 java in a 64 OS it was ok.
Source: Stackoverflow.com