6

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

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

4

1 回答 1

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"
} 

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

debian:packageBin

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

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

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

于 2014-02-10T22:48:05.077 回答