JPackage在CentOS5上看到Sun JVM的问题

我正在以完全基于RPM的方式在CentOS 5上获取Tomcat6。 JPackage似乎是一个很好的select,所以我已经添加了回购,现在我试图让它工作。

说明说从Sun安装基于RPM的JDK下载,所以我这样做了。 然后说明从JPackage安装相应的-compat库。 在这一点上,我得到以下错误:

[root@localhost bart]# rpm -ivh java-1.6.0-sun-compat-1.6.0.03-1jpp.i586.rpm error: Failed dependencies: jdk = 2000:1.6.0_03-fcs is needed by java-1.6.0-sun-compat-1.6.0.03-1jpp.i586 jpackage-utils >= 0:1.7.3 is needed by java-1.6.0-sun-compat-1.6.0.03-1jpp.i586 [root@localhost bart]# 

我特别困惑的是它似乎在寻找Fedora版本的Sun JVM。 JPAckage指令会警告使用基于RPM的下载是非常重要的,所以我一定要这样做。

如果有帮助,这是我的Java版本:

 [root@localhost bart]# java -version java version "1.6.0_18" Java(TM) SE Runtime Environment (build 1.6.0_18-b07) Java HotSpot(TM) Server VM (build 16.0-b13, mixed mode) [root@localhost bart]# 

任何想法,我已经错过了或做错了?

谢谢,

巴特。

您正在尝试为不同版本的JDK安装compat库,这是您从Sun安装的。

您正在尝试安装与JDK 1.6.0_03相匹配的compat-1.6.0.03 1.6.0.03。

你的java版本是1.6.0_18。 你可以在这里得到1.6.0_03

看起来他们从U3(1.6.0_03)

这个gem有点隐藏在他们的指示(重点是我的):

确保将-compat软件包的版本与第一步安装的SDK匹配 。 -compat RPM要求在上一步中使用来自Sun的RPM自解压文件,而不是普通(非RPM)文件。

我会build议卸载1.6.0_18 jdk,并安装1.6.0_03 jdk。 这应该让你到你需要去的地方。

除了Zypher的回答,您需要正确的-compat rpm与已安装的JVM相匹配,看起来rpm似乎在提醒您,您还需要安装适当版本的jpackage-utils rpm。

我也会提醒你,postinstall scriptlet有时会在尝试设置替代方法(我相信有一个错字)时无法正确执行。 你应该可以通过rpm -q --scripts <rpm package name>来提取scriptlet,把postinstall内容放在一个.sh文件中,修正错别字,然后通过sh mypostinstall.sh执行固定的脚本来正确设置替代对于java和javac。

我只是喜欢讽刺 放弃了JPackage之后,我去找了一个很好的指令来手动安装Tomcat6,并以非特权用户的身份运行,并具有良好的启动脚本。 我find了什么? 使用JPackage将Tomcat6安装在Centos5上的解决scheme!

关键是这个第三方compat库修复了CentOS 5与JPackage有什么奇怪的问题: http : //plone.lucidsolutions.co.nz/linux/centos/jpackage-jpackage-utils-compatibility-for-centos-5。 X

为了完整起见,我在这里find了说明: http : //wavded.tumblr.com/post/258713913/installing-tomcat-6-on-centos-5

巴特。