我正在尝试为使用izpack生成的可执行jar创建rpm包。它基本上是一个允许用户安装工具/软件的安装程序向导。它提供了一个可执行的jar。所以我们必须做
Java -jar file.jar
初始化向导。我试图在Linux中自动化它,通过创建一个带有这个jar的rpm和一个执行这个jar的sh文件,并在执行rpm文件时运行sh文件。我是rpmbuild的新手,所有在线教程都是关于将特定jar从rpm文件复制到目标位置而不是如何执行它。
有人可以提供一个示例规范文件,该文件执行以下操作
使用.jar和.sh创建rpm文件 执行rpm -i file.rpm时,它会运行.sh文件,然后执行jar并打开向导。
我对如何让jar自动执行的任何其他建议持开放态度。我基本上试图为linux创建一个类似的exe文件
提前致谢。
答案 0 :(得分:0)
我强烈建议不出于各种原因这样做,因为它与RPM应该做的完全相反。您应该在构建机器(作为非root用户!),然后捕获要安装的文件。
为什么你的方法是个坏主意?
rpm -V
)或查询安装它们的软件包(rpm -q --whatprovides /path/to/file
)也就是说,如果你坚持要破解,你的解决方案是将java
安装调用放在%post
中,这将在文件安装完成后执行。升级包时它会再次调用它,因此其他安装程序需要处理它。但同样,这不是正确的方法。