Playframework 2.0 SBT本机打包程序不生成任何sysv/etc/init.d/脚本

Playframework 2.0 SBT本机打包程序不生成任何sysv/etc/init.d/脚本,playframework-2.0,sbt,sbt-native-packager,Playframework 2.0,Sbt,Sbt Native Packager,我正在为play 2.3.8应用程序创建debian包 我使用以下设置: val settings = Seq( debianPackageDependencies in Debian := "openjdk-7-jre (>= 1.7.0)" :: Nil, maintainer in Linux := "team <support@dns.io>", packageSummary in Linux := "app", packageDescript

我正在为play 2.3.8应用程序创建debian包

我使用以下设置:

 val settings = Seq(
   debianPackageDependencies in Debian := "openjdk-7-jre (>= 1.7.0)" :: Nil,
   maintainer in Linux := "team <support@dns.io>",
   packageSummary in Linux := "app",
   packageDescription := "description",
   serverLoading in Debian := ServerLoader.SystemV,
   linuxPackageMappings in Debian := linuxPackageMappings.value.map { p ⇒
     val newMappings = p.mappings.filterNot { f ⇒
       f._2.endsWith("conf//messages") ||
       f._2.endsWith("conf//play.plugins")
     }
     p.copy(mappings = newMappings)
   },
   daemonUser in Linux := (normalizedName in Debian).value
)
val设置=Seq(
Debian中的debianPackageDependencies:=“openjdk-7-jre(>=1.7.0)”::Nil,
Linux中的维护者:=“团队”,
Linux中的packageSummary:=“应用程序”,
packageDescription:=“说明”,
Debian中的serverLoading:=ServerLoader.SystemV,
Debian中的linuxPackageMappings:=linuxPackageMappings.value.map{p⇒
val newMappings=p.mappings.filterNot{f⇒
f、 _2.endsWith(“conf//messages”)||
f、 _2.endsWith(“conf//play.plugins”)
}
p、 复制(映射=新映射)
},
Linux中的daemonUser:=(Debian中的normalizedName).value
)
但是没有生成/etc/init.d/脚本


如果我删除
linuxPackageMappings
的转换,则会生成一个init.d脚本。

在Debian中使用
linuxPackageMappings:=linuxPackageMappings.value…
,而不是使用
linuxPackageMappings:=linuxPackageMappings.value


现在它正在工作。

在不同的范围内有不同的文件。这是sbt native packager工作的核心概念。在这个解决方案中,您要过滤每个linux发行版。在您的回答中,您使用了通用linux映射来覆盖linux+debian映射。