Skip to content

Instantly share code, notes, and snippets.

@danieldbower
Created August 16, 2012 17:30
Show Gist options
  • Save danieldbower/3371888 to your computer and use it in GitHub Desktop.
Save danieldbower/3371888 to your computer and use it in GitHub Desktop.
Load-java-alternatives (another way of doing it)
//sudo update-alternatives --display
//sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/java-6-sunjdk-amd64/bin/java" 1
Map<String, String> javaVersions=['6':"java-6-openjdk-amd64", '6s':"java-6-sunjdk-amd64", '7':"java-7-openjdk-amd64"]
javaVersions.each{String version, String name ->
StringBuilder sb = new StringBuilder()
String jreBinaryPath="/usr/lib/jvm/${name}/jre/bin/"
sb << """sudo update-alternatives --install "/usr/bin/java" "java" "${jreBinaryPath}java" 1 """
String manualPath="/usr/lib/jvm/${name}/man/man1/"
String manualName="/usr/share/man/man1/"
sb << """--slave "${manualName}java.1.gz" "java.1.gz" "${manualPath}java.1.gz" """
List<String> jreBinaries=["javaws","itweb-settings","servertool","tnameserv","unpack200","keytool","orbd","pack200","policytool","rmid","rmiregistry"]
jreBinaries.each{ String tool ->
sb << """--slave "/usr/bin/${tool}" "${tool}" "${jreBinaryPath}${tool}" """
sb << """--slave "${manualName}${tool}.1.gz" "${tool}.1.gz" "${manualPath}${tool}.1.gz" """
}
String jreLibPath="/usr/lib/jvm/${name}/jre/lib/"
sb << """--slave "/usr/bin/jexec" "jexec" "${jreLibPath}jexec" """
sb << """--slave "${manualName}jexec.1.gz" "jexec.1.gz" "${manualPath}jexec.1.gz" """
String jdkBinaryPath="/usr/lib/jvm/${name}/bin/"
List<String> jdkBinaries=["appletviewer","extcheck","idlj","jar","jarsigner","javac","javadoc","javah","javap","jconsole","jdb","jhat","jinfo",
"jmap","jps","jrunscript","jsadebugd","jstack","jstat","jstatd","native2ascii","rmic","schemagen","serialver","wsgen","wsimport","xjc"]
jdkBinaries.each{ String tool ->
sb << """--slave "/usr/bin/${tool}" "${tool}" "${jdkBinaryPath}${tool}" """
sb << """--slave "${manualName}${tool}.1.gz" "${tool}.1.gz" "${manualPath}${tool}.1.gz" """
}
String icedTeaBinaryPath="/usr/lib/jvm/${name}/jre/lib/amd64/"
List<String> icedTeaBinaries=["mozilla-javaplugin.so","IcedTeaPlugin.so"]
println sb + "\n"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment