Sunday, April 28, 2024
 Popular · Latest · Hot · Upcoming
18
rated 0 times [  18] [ 0]  / answers: 1 / hits: 35066  / 3 Years ago, thu, august 12, 2021, 1:46:24

I only recently discovered the different JVM's on the wiki page and thought I'd start tinkering. Its been difficult to find documentation on how to configure Java on Ubuntu though.



Lets say I wanted to change the JRE or JDK that I'm using, I could crack open a terminal and say



sudo update-alternatives --config java


And then pick from one of the installed versions.



If I'm understanding JVM's right (which I may very well be not), You can configure the openJDK to use alternative JVM's (Eg JAMVM) and run it as such



jamvm -jar foo.jar


2 questions,



1: Do i have the concept of a JVM right? As in, is this possible?



2: If so how do i configure the JVM and switch the default to a JVM of my choosing?


More From » java

 Answers
5

Feel free to use this as a reference to tinkering with Java at runtime.



Choosing your JRE



To choose your JRE, use



sudo update-alternatives --config java


This will give something like the following output.



  Selection    Path                                            Priority   Status
------------------------------------------------------------
0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode
* 1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode
3 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1051 manual mode


You can then select which Java runtime you want through the number selection.






Choosing your JVM



Sun/Oracle have two JVM choices, -server and -client.
If you select the OpenJDK as your Java runtime environment you have additional options.



When you type java into the terminal with no other parameters, the help lists several optional VMs. I'm not sure which ones come with OpenJDK but 3 popular ones are JamVM, Zero and Cacao



To use these, simply type



java -jamvm 'your other parameters here'
java -cacao 'your other parameters here'
java -zero 'your other parameters here'
java -server 'your other parameters here


The -server VM is normally the default. You can also specify -client but in 64-bit IcedTea6 it appears to run the same version as -server.
There are most likely others but I find the default option to be the most responsive.






Setting your Memory



Finally, how to set the memory of Java (just because)



java -Xmx1024m -Xms128m 'your other parameters here'


This limits the memory allowed for the Java program to a maximum of 1024 MB, and sets its initial memory size to 128 MB. This is a great way of defining minimum system requirements. The Java 6 man page for the java command describes these options and others.



That's all. If anyone has additional Java tweaks for Ubuntu then leave them in the comments and I'll add them.


[#40180] Thursday, August 12, 2021, 3 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
humbire

Total Points: 55
Total Questions: 93
Total Answers: 113

Location: Oman
Member since Fri, Dec 23, 2022
1 Year ago
humbire questions
Thu, May 13, 21, 02:28, 3 Years ago
Sun, Oct 24, 21, 14:23, 3 Years ago
Wed, May 17, 23, 22:16, 1 Year ago
;