当前位置: 首页>>技术教程>>正文


我如何安装Sun/Oracle专有的Java JDK 6/7/8或JRE?

, , , ,

问题描述

我想安装Oracle的JRE并在软件更新器发布时更新到最新版本。是否有由Canonical或Oracle提供的Ubuntu软件包?

在发布Java 7之前,我遵循this way安装Java 6。

但它不适用于Java 7.没有包sun-java7-xxx。你如何安装Java 7?

最佳解决办法

有关如何安装JRE 7的similar answer

安装Java JDK

手动方式

  • Download 32位或64位Linux“压缩二进制文件” – 它具有”.tar.gz”文件扩展名。

  • 解压缩tar -xvf jdk-8-linux-i586.tar.gz(32位)tar -xvf jdk-8-linux-x64.tar.gz(64位)将JDK 8软件包解压缩到./jdk1.8.0目录中。 N.B .:仔细检查这个文件夹的名称,因为Oracle似乎每次更新都会偶尔更改。

  • 现在将JDK 8目录移动到/usr/lib sudo mkdir -p /usr /lib /jvm sudo mv ./jdk1.8.0 /usr /lib /jvm /

  • 现在运行sudo的update-alternatives –install “/usr/bin/java” “java” “/usr/lib/jvm/jdk1.8.0/bin/java” 1须藤update-alternatives –install “/usr/bin/javac” “javac” “/usr/lib/jvm/jdk1.8.0/bin/javac” 1须藤update-alternatives –install “/usr/bin/javaws” “javaws”“/usr /lib中/JVM /jdk1.8.0 /bin /javaws“1这将为Oracle JDK分配1的优先级,这意味着安装其他JDK将为replace it as the default。如果您希望Oracle JDK保持默认状态,请确保使用更高的优先级。

  • 更正文件所有权和可执行文件的权限:sudo chmod a + x /usr /bin /java sudo chmod a + x /usr /bin /javac sudo chmod a + x /usr /bin /javaws sudo chown -R root: root /usr/lib/jvm/jdk1.8.0注意:请记住 – Java JDK有更多的可执行文件,您可以像上面那样进行类似的安装。 javajavacjavaws可能是最常用的。这个answer lists可用的其他可执行文件。

  • 
    sudo update-alternatives --config java
    

    你会看到类似于下面的输出 – 选择jdk1.8.0的数量 – 例如3在这个列表中(除非你从未在你的计算机上安装过Java,在这种情况下,一句话“没什么可配置的”将会出现):

    $ sudo update-alternatives --config java
    There are 3 choices for the alternative java (providing /usr/bin/java).
    
      Selection    Path                                            Priority   Status
    ------------------------------------------------------------
      0            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      auto mode
      1            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      manual mode
    * 2            /usr/lib/jvm/jdk1.7.0/bin/java                   1         manual mode
      3            /usr/lib/jvm/jdk1.8.0/bin/java                   1         manual mode
    
    Press enter to keep the current choice[*], or type selection number: 3
    update-alternatives: using /usr/lib/jvm/jdk1.8.0/bin/java to provide /usr/bin/java (java) in manual mode
    

    重复上述操作:

    sudo update-alternatives --config javac
    sudo update-alternatives --config javaws
    

请注意NetBeans用户!

您需要用set the new JDK as default编辑配置文件。


如果你想启用Mozilla Firefox插件:

32 bit:
ln -s /usr/lib/jvm/jdk1.8.0/jre/lib/i386/libnpjp2.so ~/.mozilla/plugins/

64 bit:
ln -s /usr/lib/jvm/jdk1.8.0/jre/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

N.B .:您可以将插件(libnpjp2.so)链接到/usr/lib/firefox/plugins/以安装system-wide(从15.04开始,/usr/lib/firefox-addons/plugins)。对于Ubuntu 13.10,插件目录的路径是/usr/lib/firefox/browser/plugins/

根据您的配置,您可能需要更新/etc/apparmor.d/abstractions/ubuntu-browsers.d/java中Firefox(或其他浏览器)的apparmor配置文件:

# Replace the two lines:
#  /usr/lib/jvm/java-*-sun-1.*/jre/bin/java{,_vm} cx -> browser_java,
#  /usr/lib/jvm/java-*-sun-1.*/jre/lib/*/libnp*.so cx -> browser_java,
# with those (or adapt to your new jdk folder name)
/usr/lib/jvm/jdk*/jre/bin/java{,_vm} cx -> browser_java,
/usr/lib/jvm/jdk*/jre/lib/*/libnp*.so cx -> browser_java,

然后重新启动apparmor:

sudo /etc/init.d/apparmor restart

简单的方法

安装JDK 7的最简单方法是使用Web Up8 Oracle Java OOS来完成。但是,据信此PPA有时会过时。另请注意the dangers of using a PPA

这将安装JDK 7(其中包括Java JDK,JRE和Java浏览器插件):

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
# or if you want JDK 8:
# sudo apt-get install oracle-java8-installer
# these commands install Oracle JDK7/8 and set them as default VMs automatically:
# sudo apt-get install oracle-java7-set-default
# sudo apt-get install oracle-java8-set-default

Source

N.B .:在有人尖叫之前,这是违反Oracle重新分发许可证的–PPA在个人存储库中实际上并没有Java。相反,PPA直接从Oracle下载并安装它。

脚本方式

如果您正在进行全新的Ubuntu安装而无需以前的Java安装,则如果您不想将所有内容输入控制台,此脚本会自动执行上述过程。请记住,您仍然需要从Oracle网站下载Java – Oracle的链接不是wget友好的。

在使用此命令之前,请确保此脚本与您下载的.tar.gz文件扩展名位于同一目录中,并且在同一文件夹中没有以jdk-7开头的文件。如果有,请暂时将它们移出文件夹。请记住使脚本可执行(chmod +x <script's file>)。

#!/bin/sh

tar -xvf jdk-7*
sudo mkdir /usr/lib/jvm
sudo mv ./jdk1.7* /usr/lib/jvm/jdk1.7.0
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0/bin/javac" 1
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0/bin/javaws" 1
sudo chmod a+x /usr/bin/java
sudo chmod a+x /usr/bin/javac
sudo chmod a+x /usr/bin/javaws

如果您想要安装Firefox的插件,请将其添加到脚本的末尾:

mkdir ~/.mozilla/plugins
ln -s /usr/lib/jvm/jdk1.7.0/jre/lib/amd64/libnpjp2.so ~/.mozilla/plugins/
sudo /etc/init.d/apparmor restart

检查安装是否成功

您可以使用以下命令检查安装是否成功:

java -version

你应该看到类似的东西

java version "1.8.0"
Java(TM) SE Runtime Environment (build 1.8.0-b132)
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b70, mixed mode)

您可以通过使用official oracle website来检查JRE Mozilla插件是否成功。


对于Java 6:How do I install Oracle JDK 6?

次佳解决办法

有关如何安装JDK 8的similar answer

安装JRE

Download 32位或64位Linux“压缩二进制文件” – 它具有”.tar.gz”文件扩展名并将其解压缩

tar -xvf jre-7-linux-i586.tar.gz

JRE 7包被提取到./jre1.7.0目录中。现在将JRE 7目录移至/usr/lib

sudo mv ./jre1.7.0* /usr/lib/jvm/jre1.7.0

之后,运行以下命令以获取当前安装的Java选项列表。

sudo update-alternatives --config java

你会得到如下输出:

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

Selection Path Priority Status
————————————————————
* 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode
1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode

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

记住最后一个数字,然后按回车键退出此实用程序,即在此示例中请记住数字2

如果只显示一个备选方案,请记住号码0

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jre1.7.0/bin/java 3

这会将您的新JRE 7安装添加到备选列表中,即使用 memory 号+ 1,即上例中的3。现在配置Java以使用Oracle Java JRE:

sudo update-alternatives --config java

您将在下面看到类似的输出 – 选择jre1.7.0的数量,即3

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

Selection Path Priority Status
————————————————————
* 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode
1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode
3 /usr/lib/jvm/jre1.7.0/jre/bin/java 3 manual mode

Press enter to keep the current choice[*], or type selection number: 3
update-alternatives: using /usr/lib/jvm/jre1.7.0/jre/bin/java to provide /usr/bin/java (java) in manual mode.

N.B .:如果没有以前的Java安装,那么新的JRE将成为默认设置,您将不会看到上述内容。

检查您的新JRE 7安装版本:

java -version

它应该产生

java version “1.7.0”
Java(TM) SE Runtime Environment (build 1.7.0-b147)
Java HotSpot(TM) Client VM (build 21.0-b17, mixed mode)

Install the Firefox/Chrome plugin

在终端中:

mkdir ~/.mozilla/plugins

如果已安装,请移除IcedTea插件。

sudo apt-get remove icedtea6-plugin

删除以前版本的Java插件(可能存在也可能不存在):

rm ~/.mozilla/plugins/libnpjp2.so

现在你可以通过创建一个符号链接来安装插件(你告诉Firefox,插件所在的位置)。适用于32位Java使用

ln -s /usr/lib/jvm/jre1.7.0/lib/i386/libnpjp2.so ~/.mozilla/plugins/

对于64位Java使用

ln -s /usr/lib/jvm/jre1.7.0/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

通过使用official oracle website确认JRE已成功。

第三种解决办法

下面是一个经过测试和工作的解决方案,用于安装Oracle JDK 7及其所有文件,以便”javac”和其他一切工作:How To Install Oracle Java 7 (JDK) In Ubuntu

这里是命令(只是为了方便):

  1. here下载最新的Oracle JDK 7。

  2. 将下载的Oracle Java JDK归档文件解压缩到您的主文件夹中 – 应该创建一个名为”jdk1.7.0_03″(用于Java JDK7更新3)的新文件夹。将其重命名为”java-7-oracle”,并使用以下命令将其移至/usr /lib /jvm:

cd sudo mkdir -p /usr/lib/jvm/      #just in case sudo mv java-7-oracle/ /usr/lib/jvm/ 

3. Install Update Java package created by Bruce Ingalls (packages available for Ubuntu 11.10, 11.04, 10.10 and 10.04):

sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install update-java 

4. Now run the following command in a terminal to install Oracle Java JDK:

sudo update-java 

Select the Java Version that you want to install and set as the default

几分钟后,Oracle Java JDK应该成功安装在您的Ubuntu机器上。您可以通过在终端中运行这些命令来检出版本:

java -version javac -version 

更新Oracle发布了Java 8(稳定版)。要安装它,请使用以下命令:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

更多信息@ WebUpd8:Install Oracle Java 8 In Ubuntu Via PPA Repository [JDK8]

第四种办法

来自http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-jdk7-installer

第五种办法

这就是我刚刚将它安装在Oneiric中的方式。这将是一个相当长的答案,但它为我工作。

从Oracle下载最新的Java SDK 1.7.0。然后将其解压到/usr /lib /jvm:

cd /usr/lib/jvm/
sudo tar -xvzf ~/jdk-7-linux-x64.tar.gz
sudo mv jdk1.7.0 java-7-oracle
sudo ln -s java-7-oracle java-1.7.0-oracle

之后,我在/usr /lib /jvm中创建了.java-1.7.0-oracle.jinfo文件,内容如下:

alias=java-7-oracle
priority=100
section=non-free

jre ControlPanel /usr/lib/jvm/java-7-oracle/jre/bin/ControlPanel
jre java /usr/lib/jvm/java-7-oracle/jre/bin/java
jre java_vm /usr/lib/jvm/java-7-oracle/jre/bin/java_vm
jre javaws /usr/lib/jvm/java-7-oracle/jre/bin/javaws
jre jcontrol /usr/lib/jvm/java-7-oracle/jre/bin/jcontrol
jre keytool /usr/lib/jvm/java-7-oracle/jre/bin/keytool
jre pack200 /usr/lib/jvm/java-7-oracle/jre/bin/pack200
jre policytool /usr/lib/jvm/java-7-oracle/jre/bin/policytool
jre rmid /usr/lib/jvm/java-7-oracle/jre/bin/rmid
jre rmiregistry /usr/lib/jvm/java-7-oracle/jre/bin/rmiregistry
jre unpack200 /usr/lib/jvm/java-7-oracle/jre/bin/unpack200
jre orbd /usr/lib/jvm/java-7-oracle/jre/bin/orbd
jre servertool /usr/lib/jvm/java-7-oracle/jre/bin/servertool
jre tnameserv /usr/lib/jvm/java-7-oracle/jre/bin/tnameserv
jre jexec /usr/lib/jvm/java-7-oracle/jre/lib/jexec
jdk appletviewer /usr/lib/jvm/java-7-oracle/bin/appletviewer
jdk apt /usr/lib/jvm/java-7-oracle/bin/apt
jdk extcheck /usr/lib/jvm/java-7-oracle/bin/extcheck
jdk idlj /usr/lib/jvm/java-7-oracle/bin/idlj
jdk jar /usr/lib/jvm/java-7-oracle/bin/jar
jdk jarsigner /usr/lib/jvm/java-7-oracle/bin/jarsigner
jdk java-rmi.cgi /usr/lib/jvm/java-7-oracle/bin/java-rmi.cgi
jdk javac /usr/lib/jvm/java-7-oracle/bin/javac
jdk javadoc /usr/lib/jvm/java-7-oracle/bin/javadoc
jdk javah /usr/lib/jvm/java-7-oracle/bin/javah
jdk javap /usr/lib/jvm/java-7-oracle/bin/javap
jdk jconsole /usr/lib/jvm/java-7-oracle/bin/jconsole
jdk jdb /usr/lib/jvm/java-7-oracle/bin/jdb
jdk jhat /usr/lib/jvm/java-7-oracle/bin/jhat
jdk jinfo /usr/lib/jvm/java-7-oracle/bin/jinfo
jdk jmap /usr/lib/jvm/java-7-oracle/bin/jmap
jdk jps /usr/lib/jvm/java-7-oracle/bin/jps
jdk jrunscript /usr/lib/jvm/java-7-oracle/bin/jrunscript
jdk jsadebugd /usr/lib/jvm/java-7-oracle/bin/jsadebugd
jdk jstack /usr/lib/jvm/java-7-oracle/bin/jstack
jdk jstat /usr/lib/jvm/java-7-oracle/bin/jstat
jdk jstatd /usr/lib/jvm/java-7-oracle/bin/jstatd
jdk native2ascii /usr/lib/jvm/java-7-oracle/bin/native2ascii
jdk rmic /usr/lib/jvm/java-7-oracle/bin/rmic
jdk schemagen /usr/lib/jvm/java-7-oracle/bin/schemagen
jdk serialver /usr/lib/jvm/java-7-oracle/bin/serialver
jdk wsgen /usr/lib/jvm/java-7-oracle/bin/wsgen
jdk wsimport /usr/lib/jvm/java-7-oracle/bin/wsimport
jdk xjc /usr/lib/jvm/java-7-oracle/bin/xjc
plugin xulrunner-1.9-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so
plugin mozilla-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so

然后你需要告诉update-alternatives所有新的东西:

$ sudo -sH
Password:
# update-alternatives --quiet --install /usr/lib/xulrunner-addons/plugins/libjavaplugin.so xulrunner-1.9-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so 100
# update-alternatives --quiet --install /usr/lib/mozilla/plugins/libjavaplugin.so mozilla-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so 100
# update-alternatives --quiet --install /usr/bin/appletviewer appletviewer /usr/lib/jvm/java-7-oracle/bin/appletviewer 100 --slave /usr/share/man/man1/appletviewer.1 appletviewer.1 /usr/lib/jvm/java-7-oracle/man/man1/appletviewer.1
# update-alternatives --quiet --install /usr/bin/apt apt /usr/lib/jvm/java-7-oracle/bin/apt 100 --slave /usr/share/man/man1/apt.1 apt.1 /usr/lib/jvm/java-7-oracle/man/man1/apt.1
# update-alternatives --quiet --install /usr/bin/extcheck extcheck /usr/lib/jvm/java-7-oracle/bin/extcheck 100 --slave /usr/share/man/man1/extcheck.1 extcheck.1 /usr/lib/jvm/java-7-oracle/man/man1/extcheck.1
# update-alternatives --quiet --install /usr/bin/idlj idlj /usr/lib/jvm/java-7-oracle/bin/idlj 100 --slave /usr/share/man/man1/idlj.1 idlj.1 /usr/lib/jvm/java-7-oracle/man/man1/idlj.1
# update-alternatives --quiet --install /usr/bin/jar jar /usr/lib/jvm/java-7-oracle/bin/jar 100 --slave /usr/share/man/man1/jar.1 jar.1 /usr/lib/jvm/java-7-oracle/man/man1/jar.1
# update-alternatives --quiet --install /usr/bin/jarsigner jarsigner /usr/lib/jvm/java-7-oracle/bin/jarsigner 100 --slave /usr/share/man/man1/jarsigner.1 jarsigner.1 /usr/lib/jvm/java-7-oracle/man/man1/jarsigner.1
# update-alternatives --quiet --install /usr/bin/javac javac /usr/lib/jvm/java-7-oracle/bin/javac 100 --slave /usr/share/man/man1/javac.1 javac.1 /usr/lib/jvm/java-7-oracle/man/man1/javac.1
# update-alternatives --quiet --install /usr/bin/javadoc javadoc /usr/lib/jvm/java-7-oracle/bin/javadoc 100 --slave /usr/share/man/man1/javadoc.1 javadoc.1 /usr/lib/jvm/java-7-oracle/man/man1/javadoc.1
# update-alternatives --quiet --install /usr/bin/javah javah /usr/lib/jvm/java-7-oracle/bin/javah 100 --slave /usr/share/man/man1/javah.1 javah.1 /usr/lib/jvm/java-7-oracle/man/man1/javah.1
# update-alternatives --quiet --install /usr/bin/javap javap /usr/lib/jvm/java-7-oracle/bin/javap 100 --slave /usr/share/man/man1/javap.1 javap.1 /usr/lib/jvm/java-7-oracle/man/man1/javap.1
# update-alternatives --quiet --install /usr/bin/jconsole jconsole /usr/lib/jvm/java-7-oracle/bin/jconsole 100 --slave /usr/share/man/man1/jconsole.1 jconsole.1 /usr/lib/jvm/java-7-oracle/man/man1/jconsole.1
# update-alternatives --quiet --install /usr/bin/jdb jdb /usr/lib/jvm/java-7-oracle/bin/jdb 100 --slave /usr/share/man/man1/jdb.1 jdb.1 /usr/lib/jvm/java-7-oracle/man/man1/jdb.1
# update-alternatives --quiet --install /usr/bin/jhat jhat /usr/lib/jvm/java-7-oracle/bin/jhat 100 --slave /usr/share/man/man1/jhat.1 jhat.1 /usr/lib/jvm/java-7-oracle/man/man1/jhat.1
# update-alternatives --quiet --install /usr/bin/jinfo jinfo /usr/lib/jvm/java-7-oracle/bin/jinfo 100 --slave /usr/share/man/man1/jinfo.1 jinfo.1 /usr/lib/jvm/java-7-oracle/man/man1/jinfo.1
# update-alternatives --quiet --install /usr/bin/jmap jmap /usr/lib/jvm/java-7-oracle/bin/jmap 100 --slave /usr/share/man/man1/jmap.1 jmap.1 /usr/lib/jvm/java-7-oracle/man/man1/jmap.1
# update-alternatives --quiet --install /usr/bin/jps jps /usr/lib/jvm/java-7-oracle/bin/jps 100 --slave /usr/share/man/man1/jps.1 jps.1 /usr/lib/jvm/java-7-oracle/man/man1/jps.1
# update-alternatives --quiet --install /usr/bin/jrunscript jrunscript /usr/lib/jvm/java-7-oracle/bin/jrunscript 100 --slave /usr/share/man/man1/jrunscript.1 jrunscript.1 /usr/lib/jvm/java-7-oracle/man/man1/jrunscript.1
# update-alternatives --quiet --install /usr/bin/jsadebugd jsadebugd /usr/lib/jvm/java-7-oracle/bin/jsadebugd 100 --slave /usr/share/man/man1/jsadebugd.1 jsadebugd.1 /usr/lib/jvm/java-7-oracle/man/man1/jsadebugd.1
# update-alternatives --quiet --install /usr/bin/jstack jstack /usr/lib/jvm/java-7-oracle/bin/jstack 100 --slave /usr/share/man/man1/jstack.1 jstack.1 /usr/lib/jvm/java-7-oracle/man/man1/jstack.1
# update-alternatives --quiet --install /usr/bin/jstat jstat /usr/lib/jvm/java-7-oracle/bin/jstat 100 --slave /usr/share/man/man1/jstat.1 jstat.1 /usr/lib/jvm/java-7-oracle/man/man1/jstat.1
# update-alternatives --quiet --install /usr/bin/jstatd jstatd /usr/lib/jvm/java-7-oracle/bin/jstatd 100 --slave /usr/share/man/man1/jstatd.1 jstatd.1 /usr/lib/jvm/java-7-oracle/man/man1/jstatd.1
# update-alternatives --quiet --install /usr/bin/native2ascii native2ascii /usr/lib/jvm/java-7-oracle/bin/native2ascii 100 --slave /usr/share/man/man1/native2ascii.1 native2ascii.1 /usr/lib/jvm/java-7-oracle/man/man1/native2ascii.1
# update-alternatives --quiet --install /usr/bin/rmic rmic /usr/lib/jvm/java-7-oracle/bin/rmic 100 --slave /usr/share/man/man1/rmic.1 rmic.1 /usr/lib/jvm/java-7-oracle/man/man1/rmic.1
# update-alternatives --quiet --install /usr/bin/schemagen schemagen /usr/lib/jvm/java-7-oracle/bin/schemagen 100 --slave /usr/share/man/man1/schemagen.1 schemagen.1 /usr/lib/jvm/java-7-oracle/man/man1/schemagen.1
# update-alternatives --quiet --install /usr/bin/serialver serialver /usr/lib/jvm/java-7-oracle/bin/serialver 100 --slave /usr/share/man/man1/serialver.1 serialver.1 /usr/lib/jvm/java-7-oracle/man/man1/serialver.1
# update-alternatives --quiet --install /usr/bin/wsgen wsgen /usr/lib/jvm/java-7-oracle/bin/wsgen 100 --slave /usr/share/man/man1/wsgen.1 wsgen.1 /usr/lib/jvm/java-7-oracle/man/man1/wsgen.1
# update-alternatives --quiet --install /usr/bin/wsimport wsimport /usr/lib/jvm/java-7-oracle/bin/wsimport 100 --slave /usr/share/man/man1/wsimport.1 wsimport.1 /usr/lib/jvm/java-7-oracle/man/man1/wsimport.1
# update-alternatives --quiet --install /usr/bin/xjc xjc /usr/lib/jvm/java-7-oracle/bin/xjc 100 --slave /usr/share/man/man1/xjc.1 xjc.1 /usr/lib/jvm/java-7-oracle/man/man1/xjc.1
# update-alternatives --quiet --install /usr/bin/java-rmi.cgi java-rmi.cgi /usr/lib/jvm/java-7-oracle/bin/java-rmi.cgi 100
# update-alternatives --quiet --install /usr/bin/ControlPanel ControlPanel /usr/lib/jvm/java-7-oracle/jre/bin/ControlPanel 100
# update-alternatives --quiet --install /usr/bin/java java /usr/lib/jvm/java-7-oracle/jre/bin/java 100
# update-alternatives --quiet --install /usr/bin/java_vm java_vm /usr/lib/jvm/java-7-oracle/jre/bin/java_vm 100
# update-alternatives --quiet --install /usr/bin/javaws javaws /usr/lib/jvm/java-7-oracle/jre/bin/javaws 100
# update-alternatives --quiet --install /usr/bin/jcontrol jcontrol /usr/lib/jvm/java-7-oracle/jre/bin/jcontrol 100
# update-alternatives --quiet --install /usr/bin/keytool keytool /usr/lib/jvm/java-7-oracle/jre/bin/keytool 100
# update-alternatives --quiet --install /usr/bin/pack200 pack200 /usr/lib/jvm/java-7-oracle/jre/bin/pack200 100
# update-alternatives --quiet --install /usr/bin/policytool policytool /usr/lib/jvm/java-7-oracle/jre/bin/policytool 100
# update-alternatives --quiet --install /usr/bin/rmid rmid /usr/lib/jvm/java-7-oracle/jre/bin/rmid 100
# update-alternatives --quiet --install /usr/bin/rmiregistry rmiregistry /usr/lib/jvm/java-7-oracle/jre/bin/rmiregistry 100
# update-alternatives --quiet --install /usr/bin/unpack200 unpack200 /usr/lib/jvm/java-7-oracle/jre/bin/unpack200 100
# update-alternatives --quiet --install /usr/bin/orbd orbd /usr/lib/jvm/java-7-oracle/jre/bin/orbd 100
# update-alternatives --quiet --install /usr/bin/servertool servertool /usr/lib/jvm/java-7-oracle/jre/bin/servertool 100
# update-alternatives --quiet --install /usr/bin/tnameserv tnameserv /usr/lib/jvm/java-7-oracle/jre/bin/tnameserv 100
# update-alternatives --quiet --install /usr/bin/jexec jexec /usr/lib/jvm/java-7-oracle/jre/lib/jexec 100

现在您可以使用update-alternatives选择新安装的Java SDK。

# update-alternatives --config java              # Select java-1.7.0-oracle
# update-java-alternatives --set java-1.7.0-oracle
# exit
$

如果有更优雅的方式(不使用third-party PPA),这对我有用,我很乐意听到它。如果我可以在其中运行Java,我仍然需要测试Firefox。

第六种办法

更新的答案:

我建议以这种方式使用webupd8team ppa中的安装程序之一:

1)在终端中输入这两个命令来添加这个PPA并更新你的软件包列表:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update

2)输入以下一个(或多个)命令来安装您需要的专有Java:

  • sudo apt-get install oracle-java6-installer

  • sudo apt-get install oracle-java7-installer

  • sudo apt-get install oracle-java8-installer

  • sudo apt-get install oracle-java9-installer

3)当加载相应的Java安装程序脚本并下载并安装专用Java程序包时,还可以输入以下命令来检查安装结果:

java -version

然后你应该得到一个终端输出(对于java8稳定版本),如下所示:

java version "1.8.0_72"
Java(TM) SE Runtime Environment (build 1.8.0_72-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.72-b15, mixed mode)

更多信息:http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html

注意:这些软件包提供Oracle Java JDK,其中包括Java JDK,JRE和Java浏览器插件。 webupd8team /java PPA仅包含这些安装程序,它们只连接到Oracle Java下载站点并安装最新的JDK。

第七种办法

我很欣赏所有以前的答案。我想添加这个答案来简化www.webupd8.org完成2-5分钟安装的工作。

此安装包括:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer

就这样!!现在检查Java版本

java -version

输出将会像

java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) Server VM (build 23.25-b01, mixed mode

可能会出现一个新版本,然后您可以简单地使用以下命令进行更新:

sudo update-java-alternatives -s java-7-oracle

设置环境变量

sudo apt-get install oracle-java7-set-default

更多信息,请查看Install Oracle Java 7 in Ubuntu via PPA Repository

第八种办法

这个解决方案将为您提供干净的内置软件包,就像在Oracle出现之前它们用于与Ubuntu一起发布一样。

答案

首先是答案,然后是解释。打开终端并逐行复制并粘贴以下内容。

wget https://raw.githubusercontent.com/ladios/oab-java6/master/oab-java.sh -O oab-java.sh
chmod +x oab-java.sh
sudo ./oab-java.sh

这将构建官方sun-java6- *包,并使其可在software-center中使用。如果您还想要oracle-java7- *包,请像这样运行脚本:

sudo ./oab-java.sh -7

现在您可以使用您的首选软件包管理器安装软件包。

说明

当Oracle更改Java的分发许可证时,Linux发行版不再允许更新官方软件包。 Github用户rraptorr拿到了用于构建软件包的Debian脚本,并对其进行了修改,以便与Oracle提供的更新下载一起工作。他现在为SUN Java6Oracle Java7提供打包脚本。

oab.java.sh脚本只是一个自动下载当前版本的包装器,创建包并将它们添加到本地存储库。

进一步说明

使用此方法创建和安装的软件包将不会自动接收更新 – 只有当您重新运行脚本时才会自动接收更新。你可以通过创建一个定期运行这个脚本的cronjob来绕过这个问题。完成这项工作的最佳方法是使用anacron,将脚本放在/etc/cron.daily中。

wget https://raw.githubusercontent.com/ladios/oab-java6/master/oab-java.sh -O /root/oab-java.sh
chmod +x /root/oab-java.sh
ln -s /root/oab-java.sh /etc/cron.daily/oab-java

现在你的官方Java包总是up-to-date。

第九种办法

在AMD64上,您需要修改一些命令来创建符号链接:

ln -s /usr/lib/jvm/jre1.7.0/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

只需将i386更改为amd64

第十种办法

这对我能够运行/编译1.6或1.7的开发需求很有效。以前我只是从Ubuntu apt软件包运行1.6。

  1. 下载1.7 gzip

  2. 解压缩到文件夹

  3. 在bash文件中更新JAVA_HOME和PATH

    JAVA_HOME=/opt/java/jdk1.7.0_25
    export JAVA_HOME
    
    PATH=$JAVA_HOME/bin:$PATH
    export PATH
    

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/28.html,未经允许,请勿转载。