Java Can';t使用yum或rpm在Fedora上安装jdk
救命啊!我不知道如何安装jdkJava Can';t使用yum或rpm在Fedora上安装jdk,java,centos,fedora,yum,openjdk,Java,Centos,Fedora,Yum,Openjdk,救命啊!我不知道如何安装jdk [/usr/lib/jvm]$ su -c "yum install java-1.7.0-openjdk-devel" Loaded plugins: langpacks, presto, refresh-packagekit No package java-1.7.0-openjdk-devel available. Error: Nothing to do [/usr/lib/jvm]$ su -c "yum install java-1.7.0-open
[/usr/lib/jvm]$ su -c "yum install java-1.7.0-openjdk-devel"
Loaded plugins: langpacks, presto, refresh-packagekit
No package java-1.7.0-openjdk-devel available.
Error: Nothing to do
[/usr/lib/jvm]$ su -c "yum install java-1.7.0-openjdk"
Loaded plugins: langpacks, presto, refresh-packagekit
No package java-1.7.0-openjdk available.
Error: Nothing to do
[/usr/lib/jvm]$ su -c "yum install java-1.6.0-openjdk-devel"
Loaded plugins: langpacks, presto, refresh-packagekit
No package java-1.6.0-openjdk-devel available.
Error: Nothing to do
[/usr/lib/jvm]$ su -c "yum install java-1.6.0-openjdk"
Loaded plugins: langpacks, presto, refresh-packagekit
No package java-1.6.0-openjdk available.
Error: Nothing to do
这里我手动下载了一些rpm,最后一个是从oracle网站下载的:
[~]$ rpm -ivh java-1.7.0-openjdk-devel-1.7.0.19-2.3.9.3.fc20.x86_64.rpm
error: Failed dependencies:
java-1.7.0-openjdk = 1:1.7.0.19-2.3.9.3.fc20 is needed by java-1.7.0-openjdk-devel-1:1.7.0.19-2.3.9.3.fc20.x86_64
[~]$ sudo rpm -ivh java-1.7.0-openjdk-1.7.0.19-2.3.9.3.fc20.x86_64.rpm
Preparing... ################################# [100%]
file /usr/lib/jvm-exports/jre-1.7.0-openjdk.x86_64 from install of java-1.7.0-openjdk-1:1.7.0.19-2.3.9.3.fc20.x86_64 conflicts with file from package java-1.7.0-openjdk-1:1.7.0.9-2.3.7.0.fc18.x86_64
file /usr/lib/jvm/jre-1.7.0-openjdk.x86_64 from install of java-1.7.0-openjdk-1:1.7.0.19-2.3.9.3.fc20.x86_64 conflicts with file from package java-1.7.0-openjdk-1:1.7.0.9-2.3.7.0.fc18.x86_64
[~]$ sudo rpm -ivh jdk-7u21-linux-x64.rpm
Preparing... ################################# [100%]
file /etc/init.d/jexec from install of jdk-2000:1.7.0_21-fcs.x86_64 conflicts with file from package jdk-2000:1.6.0_38-fcs.x86_64
调试
以下是一些调试信息:
[/usr/lib/jvm]$ yum search jdk
Loaded plugins: langpacks, presto, refresh-packagekit
=========================================================== N/S Matched: jdk ============================================================
java-1.7.0-openjdk-javadoc.noarch : OpenJDK API Documentation
jdk.x86_64 : Java(TM) Platform Standard Edition Development Kit
ldapjdk.noarch : The Mozilla LDAP Java SDK
Name and summary matches only, use "search all" for everything.
要求
我必须包括“jni.h”、“libjava.so”、“libhpi.so”、“lipverify.so”和“libjvm.so”
到目前为止,我发现这些没有我需要的:
- 不需要的版本(当然):
- jdk1.7.0_06一般来说,我建议您安装Oracle JDK,而不是OpenJDK。否则,您可能会遇到一些问题。我总是发现OpenJDK存在各种各样的问题,我甚至都懒得再尝试了
从下载JDK RPM,并按照通常的说明进行操作。它通常非常简单,没有问题
完整详细的说明,包括如何安装
确保您选择了所需的正确版本(JDK1.7或JDK1.6,不要混用),因为从您的问题中,您似乎混淆了从1.5到1.7的库版本
还有一件事,在安装新的JDK之前,请卸载您已经安装的任何东西,以避免冲突。这里的问题是,当您已经拥有Oracle JDK 6时,您无法使用Oracle rpm安装JDK 7,因为它试图安装JDK 6已经安装且需要的
脚本 如果您打算使用Oracle发行版,我建议您坚持使用tarball或自解压/etc/init.d/jexec
并使用JAVA_HOME,因为它没有这个问题,而且您可能不需要任何帮助。请在此处查看我的答案*.bin
基本上,您可以使用rpm--force将一个JDK安装在另一个之上。特别是当您必须为不同的JAVA版本开发时,这个场景是完全有效的。刚刚遇到了同样的问题。我不习惯使用武力命令;不想冒着弄乱系统安装时安装的现有Java的风险 最后,我做了以下工作,用不同的用户ID使用不同版本的Java运行应用服务器 下载Java tar.gz版本并解压缩:
已创建目录:tar -zxvf jdk-7u45-linux-x64.gz
手动将内容复制到新目录:mkdir /usr/java/jdk1.7.0_45
在.bashrc和.bash_配置文件中的用户ID主目录下设置java_主目录:cp -r /.../jdk1.7.0_45/* /usr/java/jdk1.7.0_45
export JAVA_HOME=/usr/java/jdk1.7.0_45 export PATH=$JAVA_HOME/bin:$PATH export PATH=$PATH:/usr/sfw/lib/gcc:/usr/sfw/bin
sudorpm-i jdk-11.0.9_linux-x64_bin.rpm
或者你想安装的任何软件包在我的问题中,我说我从Oracle的网站下载了“jdk-7u21-linux-x64.rpm”,试图安装它,但它说了一些关于它的信息。。。然而,我能够从Oracles网站下载并安装jdk-6u45-linux-x64-rpm.bin,所以我猜较低版本可以工作!ThanksI假设在以前的openjdk版本中还残留了一些东西,这可能是冲突的原因(这就是为什么我说卸载您必须在干净系统上安装的任何东西)。很高兴您使用JDK1.6进行管理。请注意,我这里的答案现在已经过时,并且仅在JDK1.7的上下文中有效。从JDK 11开始,使用OpenJDK是一个不错的选择,除非您希望在生产中获得Oracle的许可支持,在这种情况下,使用Oracle JDK对您来说可能是有意义的。对于那些不希望只安装一个版本的人来说,这是正确的答案。cp -r /.../jdk1.7.0_45/* /usr/java/jdk1.7.0_45
export JAVA_HOME=/usr/java/jdk1.7.0_45 export PATH=$JAVA_HOME/bin:$PATH export PATH=$PATH:/usr/sfw/lib/gcc:/usr/sfw/bin
- jdk1.7.0_06一般来说,我建议您安装Oracle JDK,而不是OpenJDK。否则,您可能会遇到一些问题。我总是发现OpenJDK存在各种各样的问题,我甚至都懒得再尝试了
从下载JDK RPM,并按照通常的说明进行操作。它通常非常简单,没有问题
完整详细的说明,包括如何安装
确保您选择了所需的正确版本(JDK1.7或JDK1.6,不要混用),因为从您的问题中,您似乎混淆了从1.5到1.7的库版本