【问题标题】:sbt-native-packager and RPM - how do I set required parameters?sbt-native-packager 和 RPM - 我如何设置所需的参数?
【发布时间】:2023-03-12 07:18:01
【问题描述】:

我发现使用 sbt 本机打包程序构建 Play 项目很困难。当我收到以下错误时,我不知道在哪里设置 RPM 配置:

[error] `rpmVendor in Rpm` is empty.  Please provide a valid vendor for the rpm SPEC.
[error] `packageSummary in Rpm` is empty.  Please provide a valid summary for the rpm SPEC.
[error] `packageDescription in Rpm` is empty.  Please provide a valid description for the rpm SPEC.

我在project/plugins.sbt中设置了以下内容:

addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "0.8.0")

在我的 build.sbt 中:

name := """supersecretproject"""

version := "1.0-SNAPSHOT"

lazy val root = (project in file(".")).enablePlugins(PlayScala)

scalaVersion := "2.11.1"

libraryDependencies ++= Seq(
  jdbc,
  anorm,
  cache,
  ws  
)

libraryDependencies += "mysql" % "mysql-connector-java" % "5.1.27"

javacOptions ++= Seq("-source", "1.6", "-target", "1.6")

tomcat()

documentation 只是声明:

rpm 包需要一些强制设置才能有效。确保你的构建中有这些设置:

rpmRelease := "1"

rpmVendor := "typesafe"

rpmUrl := Some("http://github.com/paulp/sbt-extras")

rpmLicense := Some("BSD")

如果您不太了解 SBT,这几乎完全没用!如何按照文档说明“在您的构建中包含这些设置:”?

我尝试将上述“设置”添加到 build.sbt 或单独的 packageSettings.sbt 但没有运气,因为我只是收到以下错误:

error: not found: value rpmRelease
rpmRelease := "1"
^
[error] Type error in expression

注意:我使用 sbt rpm:packageBin 运行 sbt

【问题讨论】:

    标签: scala sbt


    【解决方案1】:

    听起来那个插件的开发者试图不要太规范,但这样做并没有给你足够的信息来开始! :-(

    最简单的解决方案:将这四个设置(包括中间的空行)复制到您的build.sbt

    一个合乎逻辑的位置可能位于文件的底部,因为“打包”您的应用是在开发周期“接近尾声”时发生的事情。

    另一个选项: SBT automatically combines 它在项目根目录中找到的所有 .sbt 文件的内容。因此,如果您愿意,可以创建一个新文件,例如 packagingSettings.sbt,并将这些设置放入其中。

    编辑:导入帮助:

    无论您选择哪个选项,您都需要在文件顶部添加以下导入(根据 getting started guide):

    import com.typesafe.sbt.SbtNativePackager._
    import NativePackagerKeys._
    

    【讨论】:

    • 我已经尝试将其添加到 build.sbt 并得到以下错误:error: not found: value rpmRelease rpmRelease := "1"
    • 注意:我使用 rpm:packageBin 运行 sbt
    • 在添加导入后,packageSummary := ...packageDescription := ... 都起作用了!谢谢:)
    猜你喜欢
    • 2016-12-14
    • 2014-12-04
    • 2020-11-07
    • 2016-11-10
    • 2018-09-29
    • 2014-01-02
    • 2018-05-18
    • 2014-01-09
    • 2017-01-25
    相关资源
    最近更新 更多