sbt native-packager RPM安装目录问题

时间:2014-10-15 18:38:20

标签: scala sbt-native-packager

我试图修改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)
  }
}

1 个答案:

答案 0 :(得分:2)

我能够通过删除上面的代码并在我的build.sbt添加一个衬垫来解决这个问题:

defaultLinuxInstallLocation:= "/opt"