国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

在Ubuntu中通過update-alternatives切換軟件版本

2019-11-09 17:24:46
字體:
來源:轉載
供稿:網友

update-alternatives是Ubuntu系統中專門維護系統命令鏈接符的工具,通過它可以很方便的設置系統默認使用哪個命令、哪個軟件版本,比如,我們在系統中同時安裝了open jdk和sun jdk兩個版本,而我們又希望系統默認使用的是sun jdk,那怎么辦呢?通過update-alternatives就可以很方便的實現了。

 

  sudo update-alternatives --install /usr/bin/java java /opt/java/jdk1.6.0_27/bin/java 1062  

 

其中1062 為alternative更改后的優先級,新更改的優先級需要大于當前的,通過update-alternatives --display java 可以查看。

 

現在介紹下 update-alternatives 命令中的幾個主要選項,diplay、install、remove、config; 

 

   1、display選項的功能就是查看一個命令鏈接組的所有信息,包括鏈接的模式(自動還是手動)、鏈接PRiority值、所有可 用的鏈接命令等等。使用語法:update-alternatives --display name ,其中name為命令鏈接名稱,如java,執行命令: update-alternatives --display java 將會出現類似下面的結果

 

java - auto mode

        link currently points to /opt/java/jdk1.6.0_27/bin/java

/opt/java/jdk1.6.0_27/bin/java - priority 1062

/usr/lib/jvm/java-6-openjdk/jre/bin/java - priority 1061

  slave java.1.gz: /usr/lib/jvm/java-6-openjdk/jre/man/man1/java.1.gz

Current 'best' version is '/opt/java/jdk1.6.0_27/bin/java'.

 

 

   2、install選項的功能就是增加一組新的系統命令鏈接符了,使用語法為:update-alternatives --install link name path priority [--slave link name path]... 其中link為系統中功能相同軟件的公共鏈接目錄,比如/usr/bin/java(需絕對目錄); name為命令鏈接符名稱,如java; path為你所要使用新命令、新軟件的所在目錄; priority為優先級,當命令鏈接已存在時,需高于當前值,因為當alternative為自動模式時,系統默認啟用priority高的鏈接; --slave為從alternative。

 

    alternative有兩種模式:auto和manual,默認都為auto模式,因為大多數情況下update-alternatives命令都被postinst (configure) or prerm (install)調用的,如果將其更改成手動的話安裝腳本將不會更新它了。

 

 

   3、remove選項的功能是刪除一個alternative及相關從alternative,使用語法為:update-alternatives --remove name path,其中name與path與install中的一致,如果所刪除的鏈接組中還有其他鏈接的話,系統將會自動從其他中選擇一個priority高的鏈接作為默認為鏈接。

 

 

   4、config選項功能為在現有的命令鏈接選擇一個作為系統默認的,使用語法為:update-alternatives --config name,如執行:sudo update-alternatives --config java,將會有類似以下信息:

There are 2 choices for the alternative java (providing /usr/bin/java).

 

  Selection    Path                                      Priority   Status

------------------------------------------------------------

* 0            /opt/java/jdk1.6.0_27/bin/java             1062      auto mode

  1            /opt/java/jdk1.6.0_27/bin/java             1062      manual mode

  2            /usr/lib/jvm/java-6-openjdk/jre/bin/java   1061      manual mode

 

Press enter to keep the current choice[*], or type selection number: 

 

   若是想將manual改回自動模式的話,執行命令: update-alternatives --auto name即可,如

 update-alternatives --config  java

Installing the JDK

The instructions on the AOSP page are out of date as of 9/13/2013; the apt repository they recommend has no package called sun-java6-jdk. The following manual recipe should install the proper JDK and replace the OpenJDK installed as a dependency of maven above.

Install Oracle JDK 6 (required by Kitkat and older AOSP versions)

$ sudo add-apt-repository ppa:webupd8team/java

$ sudo apt-get update

$ sudo apt-get install oracle-java6-installer

If you cannot install JDK 1.6 try below alternative steps. 

Alternative(Install JDK 1.6):## download java jdk from http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6u38-oth-JPR## install java$ chmod +x jdk-6u38-linux-x64.bin$ sudo ./jdk-6u38-linux-x64.bin$ sudo mv jdk1.6.0_38 /usr/lib/jvm/ $ sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.6.0_38/bin/java 1$ sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.6.0_38/bin/javac 1$ sudo update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/jdk1.6.0_38/bin/javaws 1 ## when prompted select the 6.0_38 versions of each$ sudo update-alternatives --config java$ sudo update-alternatives --config javac$ sudo update-alternatives --config javaws  $ cd /usr/lib/jvm/$ sudo ln -s ./jdk1.6.0_38/ java-6-sun ##Setting JAVA_HOME/Path for Maven and jarsigner##For all users:$ sudo nano /etc/profile.d/javaenv.sh----- Contents -----export JAVA_HOME=/usr/lib/jvm/java-6-sunexport PATH=$PATH:$JAVA_HOME/bin----- End of contents -----$ sudo chmod a+x /etc/profile.d/javaenv.sh

Install OpenJDK 7 (required by Lollipop and newer AOSP versions)

$ sudo apt-get install openjdk-7-jdk 

Post check JDK version

to list currently installed jdk versions:

$ sudo update-java-alternatives -l

java-1.7.0-openjdk-amd64 1051 /usr/lib/jvm/java-1.7.0-openjdk-amd64

java-6-oracle 1 /usr/lib/jvm/java-6-oracle

select oracle JDK 6 as default (Lollipop would set JAVA_HOME to use OpenJDK7 when doing "lunch")

$ sudo update-java-alternatives java-6-oracle

create a symbolic link for JDK6

$ sudo ln -s /usr/lib/jvm/java-6-oracle /usr/lib/jvm/java-6-sun

Reboot required for it to propagate to all users.


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汉源县| 政和县| 北碚区| 博客| 敖汉旗| 化隆| 临夏县| 鄢陵县| 景泰县| 仙桃市| 花莲市| 正镶白旗| 通许县| 齐河县| 白玉县| 盐池县| 阿克陶县| 河池市| 汤阴县| 新晃| 修武县| 台江县| 鄂伦春自治旗| 仲巴县| 启东市| 海南省| 武威市| 霍城县| 无为县| 浏阳市| 稻城县| 邵东县| 兴城市| 彭阳县| 鄢陵县| 疏附县| 塔河县| 胶南市| 梁河县| 土默特右旗| 文昌市|