商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > update-java-alternatives 更改默认Java环境

update-java-alternatives 更改默认Java环境

  发布于2026-07-17 阅读(0)

扫一扫,手机访问

Ubuntu/debian 更改默认Ja va环境

不少人的电脑里会安装多个Ja va版本,比如常见的ja va-6-sun和ja va-gcj。gcj这东西是在早年JVM慢得像蜗牛的时候诞生的,它能把Ja va代码直接编译成本地代码,也算是一种另辟蹊径的解决方案。不过今天咱们不聊这个,重点还是回到正题——怎么切换默认Ja va环境。

修改默认Ja va环境,其实就靠一个命令:update-ja va-alternatives。这玩意儿用起来很直接,两步搞定。

第一步,先看看系统里都装了哪些Ja va版本。

运行 update-ja va-alternatives -l,就能列出所有已安装的Ja va环境:

$ update-ja va-alternatives -l
ja va-6-sun 63 /usr/lib/jvm/ja va-6-sun
ja va-gcj 1042 /usr/lib/jvm/ja va-gcj

输出里,左边是Ja va的名称(也就是jname),右边是优先级和安装路径。一目了然。

第二步,指定你想用的那个版本作为默认环境。

命令格式是 sudo update-ja va-alternatives -s ,其中jname就是上一步查出来的名字。比如你想把sun jdk设为默认,那就输入:

$ sudo update-ja va-alternatives -s ja va-6-sun
[sudo] password for leo: 
使用“/usr/lib/jvm/ja va-6-sun/bin/appletviewer”来提供“appletviewer”。
使用“/usr/lib/jvm/ja va-6-sun/bin/apt”来提供“apt”。
使用“/usr/lib/jvm/ja va-6-sun/bin/extcheck”来提供“extcheck”。
使用“/usr/lib/jvm/ja va-6-sun/bin/HtmlConverter”来提供“HtmlConverter”。
使用“/usr/lib/jvm/ja va-6-sun/bin/idlj”来提供“idlj”。
使用“/usr/lib/jvm/ja va-6-sun/bin/jarsigner”来提供“jarsigner”。
使用“/usr/lib/jvm/ja va-6-sun/bin/jar”来提供“jar”。
使用“/usr/lib/jvm/ja va-6-sun/bin/ja vac”来提供“ja vac”。
使用“/usr/lib/jvm/ja va-6-sun/bin/ja vadoc”来提供“ja vadoc”。
使用“/usr/lib/jvm/ja va-6-sun/bin/ja vah”来提供“ja vah”。
使用“/usr/lib/jvm/ja va-6-sun/bin/ja vap”来提供“ja vap”。
使用“/usr/lib/jvm/ja va-6-sun/bin/jconsole”来提供“jconsole”。
使用“/usr/lib/jvm/ja va-6-sun/bin/jdb”来提供“jdb”。
使用“/usr/lib/jvm/ja va-6-sun/bin/jhat”来提供“jhat”。
使用“/usr/lib/jvm/ja va-6-sun/bin/jinfo”来提供“jinfo”。
使用“/usr/lib/jvm/ja va-6-sun/bin/jmap”来提供“jmap”。
使用“/usr/lib/jvm/ja va-6-sun/bin/jps”来提供“jps”。
使用“/usr/lib/jvm/ja va-6-sun/bin/jrunscript”来提供“jrunscript”。
使用“/usr/lib/jvm/ja va-6-sun/bin/jsadebugd”来提供“jsadebugd”。
使用“/usr/lib/jvm/ja va-6-sun/bin/jstack”来提供“jstack”。
使用“/usr/lib/jvm/ja va-6-sun/bin/jstatd”来提供“jstatd”。
使用“/usr/lib/jvm/ja va-6-sun/bin/jstat”来提供“jstat”。
使用“/usr/lib/jvm/ja va-6-sun/bin/native2ascii”来提供“native2ascii”。
使用“/usr/lib/jvm/ja va-6-sun/bin/rmic”来提供“rmic”。
使用“/usr/lib/jvm/ja va-6-sun/bin/schemagen”来提供“schemagen”。
使用“/usr/lib/jvm/ja va-6-sun/bin/serialver”来提供“serialver”。
使用“/usr/lib/jvm/ja va-6-sun/bin/wsgen”来提供“wsgen”。
使用“/usr/lib/jvm/ja va-6-sun/bin/wsimport”来提供“wsimport”。
使用“/usr/lib/jvm/ja va-6-sun/bin/xjc”来提供“xjc”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/ControlPanel”来提供“ControlPanel”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/ja va”来提供“ja va”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/ja va_vm”来提供“ja va_vm”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/ja vaws”来提供“ja vaws”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/jcontrol”来提供“jcontrol”。
使用“/usr/lib/jvm/ja va-6-sun/jre/lib/jexec”来提供“jexec”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/keytool”来提供“keytool”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/orbd”来提供“orbd”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/pack200”来提供“pack200”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/policytool”来提供“policytool”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/rmid”来提供“rmid”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/rmiregistry”来提供“rmiregistry”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/servertool”来提供“servertool”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/tnameserv”来提供“tnameserv”。
使用“/usr/lib/jvm/ja va-6-sun/jre/bin/unpack200”来提供“unpack200”。
使用“/usr/lib/jvm/ja va-6-sun/jre/lib/amd64/libnpjp2.so”来提供“firefox-ja vaplugin.so”。
使用“/usr/lib/jvm/ja va-6-sun/jre/lib/amd64/libnpjp2.so”来提供“iceape-ja vaplugin.so”。
使用“/usr/lib/jvm/ja va-6-sun/jre/lib/amd64/libnpjp2.so”来提供“iceweasel-ja vaplugin.so”。
使用“/usr/lib/jvm/ja va-6-sun/jre/lib/amd64/libnpjp2.so”来提供“midbrowser-ja vaplugin.so”。
使用“/usr/lib/jvm/ja va-6-sun/jre/lib/amd64/libnpjp2.so”来提供“mozilla-ja vaplugin.so”。
使用“/usr/lib/jvm/ja va-6-sun/jre/lib/amd64/libnpjp2.so”来提供“xulrunner-1.9-ja vaplugin.so”。
使用“/usr/lib/jvm/ja va-6-sun/jre/lib/amd64/libnpjp2.so”来提供“xulrunner-ja vaplugin.so”。

看到这一长串输出别慌,它其实是在告诉你:系统正在把每个Ja va工具(比如ja vac、ja va、jar)的符号链接,都指向你指定的那个JDK目录。一张嘴就改完了。

一点心得。 update-ja va-alternatives 这个命令的本质,就是修改 /etc/alternatives/ 目录下相关的符号链接目标。所以理论上,你也可以手动去改那些链接——但手动一个个改未免太折腾,能用命令搞定的事,就交给命令吧。

本文转载于:https://blog.csdn.net/oldtown/article/details/5623972 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注