问完问题后我可以指出 .deb 包依赖于 Java,但不指定具体实现(例如 OpenJDK、IcedTea、Oracle)吗?,我被告知,我可以default-jre
在构建包时包含一个依赖项,它会在安装包之前自动找到要安装的合适的 Java 版本。
但是,当我尝试对 .rpm 包执行相同操作时,却收到以下错误:
无法解除交易;检测到 1 个问题:
- 没有提供默认的jre所需的
如何像default-jre
使用 .deb 软件包一样使用 .rpm 软件包?
需要明确的是,我希望这是一个自动依赖项,以便用户可以获取 .rpm 包并安装应用程序(如果尚未安装,则安装 Java),而无需自己执行任何操作。
答案1
Requires: java
应该几乎可以满足您的需要。至少在 RHEL/CentOS 上,所有 Java 包都有一个,Provides: java
并且将与上面的Requires
.但是,如果未安装,您将获得最新的 Java,而不是默认的 Java。如果已经安装了,则依赖关系已得到满足,并且不会发生任何事情。