使用sbt-native-packager时的config目录

时间:2014-01-09 08:28:50

标签: scala sbt sbt-native-packager

我想问一下这个事实背后的推理,即sbt-native-packager插件创建了一个符号链接/ etc / - > / usr / share // conf(而不是真正把文件放在那里,并以某种方式在应用程序中指定在哪里查找它们)?

特别是它如何影响更新/卸载+安装过程?这些配置是否以某种方式保留(例如,对于使用java_server架构设置的debian)?

1 个答案:

答案 0 :(得分:7)

  

我想问一下这个事实背后的推理,即sbt-native-packager插件创建了一个符号链接/ etc / - > / usr / share // conf

将所有东西都放在一个地方。您的应用程序目录包含所有内容,然后您只需将OS特定文件夹链接到应用程序文件夹中的相应目录。

  

这些配置是以某种方式保存的

确实是的。您可以使用简单的播放应用程序进行试用。将其添加到 build.sbt

mappings in Universal <+= (packageBin in Compile, baseDirectory ) map { (_, base) =>
     val conf = base / "conf" / "application.conf"
     conf -> "conf/application.conf"
} 

这会将 application.conf 映射到 conf 文件夹中。使用

构建debian包时
debian:packageBin

你可以在 target / - / DEBIAN / conffiles 中看到一个条目

/usr/share/<app-name>/conf/application.conf

apt-get remove your-app 不会删除此文件,只会删除清除