Unter Linux kann der Benutzer mit dem Command update-alternatives einstellen, welche Java-Version mit dem Aufruf von
/usr/bin/java
angesprochen wird. Eine Anwendung, die sich aber auf einer bestimmtem Java-Version besonders zu Hause fühlt, muss sich nicht unbedingt an die Voreinstellung halten, die ohnehin zumeist nur zufällig zustande kommt. Das folgende Anwendungs-Bashscript präferiert Java 7 vor der sonst vielleicht eingestellten Java 6 (oder noch älteren) Version.
#!/bin/sh
javaBin="/usr/bin/java";
for entry in `update-alternatives --list java`; do
case "$entry" in
*"java-7"* )
javaBin="$entry"
break;
;;
*)
esac
case "$entry" in
*"jdk1.7"* )
javaBin="$entry"
break;
;;
*)
esac
done
$javaBin -cp application.jar org.test.Aplication $@
Nicht erschrecken, wenn es mal nicht so funktioniert. Das ist nämlich meines Wissens ein Debian / Ubuntu feature. Arch kennt ein solches Alternativen System von Haus aus z. B. Nicht.
AntwortenLöschenStimmt, Arch ist da wieder ein bisschen special. Mit Debian, Suse und RedHat passt es. Für irgendwas müssen die Package-Maintainer schließlich gut sein ;-)
AntwortenLöschen