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

teh*_*shy 6 scala sbt sbt-native-packager

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

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

Muk*_*uki 8

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

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

这些配置是以某种方式保留下来的

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

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

这会将您的application.conf映射到conf文件夹中.当你用它构建一个debian包时

debian:packageBin
Run Code Online (Sandbox Code Playgroud)

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

/usr/share/<app-name>/conf/application.conf
Run Code Online (Sandbox Code Playgroud)

一个apt-get的删除您的应用程序内不会删除此文件,只有清除