java的替代品_有没有办法更新所有Java相关的替代品?

有没有办法使用update-alternatives快速切换所有与Java相关的替代方案?

例如,如果要将Java切换到7,我运行sudo update-alternatives –config java并选择Java 7 OpenJdk.但是如果我运行update-alternatives –get-selections | grep java我得到以下内容,

appletviewer auto /usr/lib/jvm/java-6-openjdk-amd64/bin/appletviewer

extcheck auto /usr/lib/jvm/java-6-openjdk-amd64/bin/extcheck

idlj auto /usr/lib/jvm/java-6-openjdk-amd64/bin/idlj

itweb-settings auto /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/itweb-settings

jar auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jar

jarsigner auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jarsigner

java manual /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java

javac auto /usr/lib/jvm/java-6-openjdk-amd64/bin/javac

javadoc auto /usr/lib/jvm/java-6-openjdk-amd64/bin/javadoc

javah auto /usr/lib/jvm/java-6-openjdk-amd64/bin/javah

javap auto /usr/lib/jvm/java-6-openjdk-amd64/bin/javap

javaws auto /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/javaws

jconsole auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jconsole

jdb auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jdb

jexec auto /usr/lib/jvm/java-6-openjdk-amd64/jre/lib/jexec

jhat auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jhat

jinfo auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jinfo

jmap auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jmap

jps auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jps

jrunscript auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jrunscript

jsadebugd auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jsadebugd

jstack auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jstack

jstat auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jstat

jstatd auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jstatd

keytool auto /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/keytool

native2ascii auto /usr/lib/jvm/java-6-openjdk-amd64/bin/native2ascii

orbd auto /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/orbd

pack200 auto /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/pack200

policytool auto /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/policytool

rmic auto /usr/lib/jvm/java-6-openjdk-amd64/bin/rmic

rmid auto /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/rmid

rmiregistry auto /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/rmiregistry

schemagen auto /usr/lib/jvm/java-6-openjdk-amd64/bin/schemagen

serialver auto /usr/lib/jvm/java-6-openjdk-amd64/bin/serialver

servertool auto /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/servertool

tnameserv auto /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/tnameserv

unpack200 auto /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/unpack200

wsgen auto /usr/lib/jvm/java-6-openjdk-amd64/bin/wsgen

wsimport auto /usr/lib/jvm/java-6-openjdk-amd64/bin/wsimport

xjc auto /usr/lib/jvm/java-6-openjdk-amd64/bin/xjc

正如您所看到的,我的Java替代方案已切换到7,但基于OpenJDK 6的其他替代方案未切换.当然我可以手动切换每个人或写一个脚本来做到这一点,但我认为有一个更好的方法来实现这一目标.

解决方法:

诀窍是使用update-java-alternatives(来自java-common包).

因此,为了获得OpenJDK 6到7,我使用update-java-alternatives -l来获取Java替代品的列表,然后使用sudo update-java-alternatives -s java-1.7.0-openjdk-amd64到JDK.

注意:上面的命令引发了以下错误,

update-alternatives: error: no alternatives for mozilla-javaplugin.so.

update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/IcedTeaPlugin.so

这是因为默认情况下未安装openjdk插件.修复运行

sudo apt-get install icedtea-7-plugin

并重新运行update-java-alternatives.

标签:java,alternative

来源: https://codeday.me/bug/20190807/1609090.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值