我试图修改RPM的安装目录。这似乎有效,但我的RPM现在缺少init.d
启动脚本。当我查看target/universal/tmp/bin
时,我没有看到systemv-init。
以下是我build.sbt
的代码段,其中显示了我如何覆盖安装目录。我在我的scala胖jar应用程序的src/templates
目录中有自定义启动脚本。当我删除下面的安装目录覆盖时,RPM包正常并在/usr/share
中安装好。非常感谢您对此问题的任何帮助。
linuxPackageMappings in Rpm <<= (linuxPackageMappings) map { mappings =>
for(LinuxPackageMapping(filesAndNames, meta, zipped) <- mappings) yield {
val newFilesAndNames = for {
(file, installPath) <- filesAndNames
} yield file -> installPath.replaceFirst("/usr/share", "/opt")
LinuxPackageMapping(newFilesAndNames, meta, zipped)
}
}
答案 0 :(得分:2)
我能够通过删除上面的代码并在我的build.sbt
添加一个衬垫来解决这个问题:
defaultLinuxInstallLocation:= "/opt"