RECOMMENDED: Click here to fix Windows errors and optimize system performance
It is always an advantage to add more RAM to your Minecraft server. However, sometimes by adding more RAM or allocating more space, you may not be able to reserve enough space for the heap of objects. This error may be due to an incorrect version of the Java JRE.
Some users receive this error:
C:UsersmeandDesktopServer>java -Xmx2048M -Xms2048M -jar server.jar nogui
Error occurred during initialization of VM
Could not reserve enough space for 2097152KB object heap
Press any key to continue . . .
If you are also affected by this error, here are some troubleshooting tips to help you solve the disk space problems that the Minecraft server could not reserve in Windows.
Using command line options
If you have tried to run Java and received this message, then you have probably already run the free command to make sure there is enough memory available to run the program.
Note that on our test machine we had about 2.3 GB of physical RAM and no virtual memory pages were used. If you find that you have a memory problem, you should close the other things you leaked before trying again. On the other hand, those who find that they have a lot of free memory can try to specify a size directly.
For example, on our machine we could run the command as java -Xms256m -Xmx512M, and it worked as expected. This limits the size of the heap that the Java virtual machine tries to reserve at startup. Since an uninhibited virtual machine could hypothetically do unusual things, it could produce error messages on an otherwise free system. You can also play around with these two values before finding the right combination.
This can be a problem no matter what system you run it on, because the JVM has nothing to do with the type of VM you might use to run GNU/Linux.
Removing and reinstalling 64-bit Java JREs
- Press the Windows + R key.
- Type appwiz.cpl and click OK to open the control panel.
- Select the 32-bit edition of Java and click Uninstall.
- Also uninstall the 64-bit edition of Java JRE.
- Then install the 64-bit Java JRE that you downloaded in the first step.
- Try allocating more memory to your Minecraft server and see if there are any improvements.
Add a new system variable
- Press the Windows + R key to open Run.
- Enter the control panel and click OK to open the control panel.
- Go to System and Security > System.
- Click View Advanced System Settings in the left pane.
- In the System Properties window, click the Environment Variables button.
- Click the New button under the System Variables section.
- Enter the following data for the variable name and value:
- Variable name: _JAVA_OPTIONS
- Variable value: -Xmx512M
- Click OK to save the changes.
- Click OK in all open windows.
Print the current Java options
If you have been working in the command line and want a quick reference to the value of _JAVA_OPTIONS, simply run echo $_JAVA_OPTIONS and it will immediately display the current values. This is useful for troubleshooting when trying to find the right numbers.
Keep in mind that, although this fix should not require any further manipulation, Java will display the message “Could not reserve enough space for object heap” if you really run out of virtual memory. If this is the case, you should check which processes are running and possibly restart the server if this is an option. You could also create more swap space, but if this is a problem, it is usually better to try to solve it by other means.
In the rare cases where your settings appear to be correct, but it still doesn’t work, make sure you have installed the 64-bit Java package, as it should be immune to this problem. Adjacent memory requirements only apply to the 32-bit version of Java. We found in a few cases that the 64-bit version tried to create a 32-bit virtual machine, so specifying the -d64 option on the command line solved the problem for us.
RECOMMENDED: Click here to troubleshoot Windows errors and optimize system performance
CCNA, Web Developer, PC Troubleshooter
I am a computer enthusiast and a practicing IT Professional. I have years of experience behind me in computer programming, hardware troubleshooting and repair. I specialise in Web Development and Database Design. I also have a CCNA certification for Network Design and Troubleshooting.