我在ubuntu 14.04中意外升级了整个系统.

我正在尝试部署需要JDK7的war文件.

我尝试安装JDK7并将其用作默认值

root:floyd~# update-alternatives --config java
There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
Nothing to configure.

但它也没有安装.尝试安装JDK 7时出现以下错误.

root@floyd:~# apt-get install openjdk-7-jdk
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package openjdk-7-jdk is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
N: Ignoring file '50unattended-upgrades.ucf-dist' in directory '/etc/apt/apt.conf.d/' as it has an invalid filename extension
E: Package 'openjdk-7-jdk' has no installation candidate

我想我有两个选择.

>安装JDK7并将其用作默认值.

>将JDK8降级为JDK7.

我认为降级可能是一个不错的选择,但我无法做任何一个.

解决方法:

在默认配置中安装JRE / JDK

OpenJDK 7默认安装在Ubuntu 12.10及更高版本中.

安装Java,apt-get很容易:

sudo apt-get update
java -version

如果执行后我们有类似的东西:“程序java可以在以下包中找到”,这意味着没有安装Java.所以,我们需要:

sudo apt-get install default-jre

因此,将安装Java运行时环境(JRE).当我们想要安装Java开发工具包(JDK)时,我们需要做的是编译Java-app(例如,Apache Ant,Apache Maven,Eclipse和IntelliJ IDEA)所需的Java开发工具包(JDK):

sudo apt-get install default-jdk

现在,安装了Java.

安装OpenJDK 7(可选)

sudo apt-get install openjdk-7-jre

执行后将安装Java Runtime Environment(JRE).对于Java Development Kit(JDK),我们执行:

sudo apt-get install openjdk-7-jdk

安装Oracle JDK(可选)

Oracle JDK是一个正式的JDK,但现在,Oracle不支持它,就像在Ubuntu中安装默认一样.

我们可以通过apt-get安装它,但在我们需要执行下一个命令之前:

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

之后,我们必须选择所需的版本并执行:

对于Oracle JDK 6

sudo apt-get install oracle-java6-installer

对于Oracle JDK 7

sudo apt-get install oracle-java7-installer

对于Oracle JDK 8

sudo apt-get install oracle-java8-installer

对于Oracle JDK 9

sudo apt-get install oracle-java9-installer

管理Java(可选)

当我们安装了一些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-7-oracle/jre/bin/java 1062 auto mode
1 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-7-oracle/jre/bin/java 1062 manual mode
Press enter to keep the current choice[*], or type selection number:

我们可以在屏幕上看到它:

我们可以做同样的动作来选择编译器(javac):

sudo update-alternatives --config javac

此命令可用于选择其他java组件,例如:keytool,javadoc和jarsigner.

安装“JAVA_HOME”

要安装** JAVA_HOME **:

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-7-oracle/jre/bin/java 1062 auto mode
1 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-7-oracle/jre/bin/java 1062 manual mode
Press enter to keep the current choice[*], or type selection number:

我们可以看到java的路径是:

/usr/lib/jvm/java-7-oracle
/usr/lib/jvm/java-6-openjdk-amd64
/usr/lib/jvm/java-7-oracle

现在,我们需要复制其中一种方法并将其粘贴到:

在/ etc /环境:

sudo nano /etc/environment

在文件中,我们将添加一个路径(其中YOUR_PATH – 是所需java版本的路径,例如:“/usr/lib / jvm / java-7-oracle”):

JAVA_HOME="/usr/lib/jvm/java-7-oracle"

在屏幕上:

现在,我们需要重启此文件:

source /etc/environment

要检查它,我们可以:

echo $JAVA_HOME

在屏幕上:

当我们现在有输入方式(在我们的例子中为“/usr/lib / jvm / java-7-oracle”)时,它意味着我们成功地做到了.换句话说,我们需要更加专心,并检查所有这些步骤.

标签:ubuntu,java,java-8,java-7