Java Version Details ermitteln

Eraser

Mitglied
Hallo,

ich weiß, das Thema gibt es andauernd, dass jemand wissen möchte wie man die intallierte Java-Version ermitteln kann.

Ich möchte in meiner Java-Applikation die Details ermitteln können, die bei der Eingabe in der Kommendozeile durch "java -version" ausgegeben werden.

Hier werden bekanntlich 3 Zeilen ausgegeben:
Code:
java version "1.6.0_23"
java/TM) SE Runtime Environment (build 1.6.0_23-b05)
Java HotSpot(TM) 64-Bit Server VM (build 19.0-b09, mixed-mode)

Wie ich an die Information aus der ersten Zeile komme, weiß ich.
Mich interessiert aber speziell die dritte Zeile.

Weiß jemand wie ich da rainkomme?


LG
Eraser
 
Hallo.

Ich denke mal, dass man das meiste über die System-Properties herausbekommt, sprich
Code:
System.getProperty( key )
(s. hier).
 
Am einfachsten kommst du per "java -version" an die Informationen.
Da du das aber wohl selber weißt, denke ich, das du meinst, wie du von einem Java Programm dran kommst!?
Nun, da kannst du per Runtime.getRuntime().exec("java -version") einfach "java -version" aufrufen und die Ausgabe abfangen.
 
Vielleicht hat die commons-lang in SystemUtils da Infos zu, ansonsten mal die System Properties ansehen.
 
Ich denke die Infos die du brauchst sind: java.vm.name, java.vm.version und java.vm.info

So bastelst du dir denselben String zusammen, den du auch mit: java -version (3. Zeile) bekommen würdest:

Java:
String dritteZeile = System.getProperty("java.vm.name") + " (build " +
		             System.getProperty("java.vm.version") + ", " +
		             System.getProperty("java.vm.info") + ")";

Gruß
 

Zurück
Oben