我正在尝试使用 SBT 构建 RPM,已经有一个 Build.scala 文件驻留在项目文件夹中,它具有:
项目/Build.scala
import sbt._
import Keys._
import play.Project._
object ApplicationBuild extends Build { ... }
然后我在 project/ 中有一个 Packaging.scala 文件
项目/Packaging.scala
import sbt._
import com.typesafe.sbt.packager.Keys._
import sbt.Keys._
import com.typesafe.sbt.SbtNativePackager._
object Packaging {
val settings: Seq[Setting[_]] = packagerSettings ++ deploymentSettings ++ mapGenericFilesToLinux ++ Seq(.... )
}
其中定义了名称、packageSummary、版本、维护者、packageDescription、Rpm 中的名称、Rpm 中的版本、rpmRelease 等。
然后我在 plugins.sbt
项目/plugins.sbt
// Plugin for sbt native package manager
addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "0.6.4")
然后在项目区域外的主要 build.sbt 中:
构建.sbt
Packaging.settings
问题是规范文件从未设法填充位于项目目录内的 packaging.scala 文件中的任何字段。它仅填充在 Build.scala 中找到的信息,因此缺少摘要等元素,并且版本来自 Build.scala 而不是 Packaging.scala。我不确定如何让 Packaging.scala 文件负责打包并填充生成规范文件时所需的信息。
我运行的命令是
sbt rpm:package-bin