我有安装程序java 1.8.0_77,但仍然得到依赖项错误

时间:2016-04-19 13:22:13

标签: java

我有一个CentOS 7盒子。我已在其上安装了Java 1.8.0_77:

[root@centos7 ~]# java -version
java version "1.8.0_77"
Java(TM) SE Runtime Environment (build 1.8.0_77-b03)
Java HotSpot(TM) 64-Bit Server VM (build 25.77-b03, mixed mode)

[root@centos7 ~]# echo $JAVA_HOME
 /opt/install/jdk1.8.0_77
[root@centos7 ~]# echo $JRE_HOME
/opt/install/jdk1.8.0_77/jre

但是当我尝试安装RPM时,我仍然会收到错误:

[root@centos7 ~]# rpm -ivh xxxx.x86_64.rpm
error: Failed dependencies:
    jre >= 1.8.0_71 is needed by xxxx.x86_64

为什么?

1 个答案:

答案 0 :(得分:0)

  

包管理器就是 - 包裹信息管理员,   它并不真正知道你的系统上有什么,只是包装它的内容   已安装,因此它假设在您的系统上。

     

这种设计的明显问题是两者可能会失效   同步,比方说,如果您通过从oracle下载它手动安装JRE,   然后包管理器不知道它在那里,因此做它   指出失败的依赖链的工作。

     

有多种选择,假设这是问题(检查你的   rpm包列表,我忘记了rpm的参数)以丑陋的顺序:(1)   您可以安装JRE的发行版本,这将是   包经理很高兴,(2)你可以捏造包经理吧   认为说依赖" jre版本1.7.0"实际安装,用   或者不安装它,然后破坏java二进制文件以使用你的   安装版本,或者(3)你可以只安装tomcat   --nodeps选项忽略依赖项。请注意(3)是一个滑坡,你最终会跳过更多的依赖和次级   随着时间的推移依赖。

https://unix.stackexchange.com/questions/94091/rpm-failed-jre-dependency-even-though-that-jre-version-is-installed

之前这对我有用,希望它也能解决你的问题。