当前位置: 首页 > 知识库问答 >
问题:

sbt-native-packager,钩入debian包生命周期

公冶才
2023-03-14

我尝试使用sbt-native-packager来构建deb包。我想加入debian包的生命周期。我试图根据sbt-native-packager站点上的说明来实现这一点。在我的建筑中.sbt我添加了如下内容:

import DebianConstants._
maintainerScripts in Debian := maintainerScriptsAppend((maintainerScripts in Debian).value)(
  Preinst -> "echo 'hello, world'",
  Postinst -> s"echo 'installed ${(packageName in Debian).value}'"
)

但我得到错误无法解析符号debianconstants。我使用sbt 0.13.9、scala 2.11.6和sbt-native-packager 1.0.6。我在包中搜索,找不到类似debianconstants的东西。我也找不到debianmaintainerscripts键。看来sbt-native-packager站点已经过时了。有没有一种方法以编程方式挂接到debian包生命周期中?

共有1个答案

扶冠宇
2023-03-14

要在build.sbt中使用此类代码,您需要1.1.0-rc发行版本。只需将此添加到项目/plugins.sbt:

addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.1.0-RC1")
 类似资料:
  • 我有一个sbt构建,当我从命令行运行时可以工作,但Intellij不喜欢。我的Intellij运行在Linux上,它的版本是14.1.4,我的scala插件是1.5.2。 Intellij抱怨我使用enablePlugins(JavaAppPackaging)。错误是“表达式类型(DslEntry)必须符合SBT文件中的设置[_]”。 我的项目/构建。属性文件: 我的项目/插件。sbt公司 我bu

  • 正如您所看到的,我已经注释掉了Docker中的映射。这样做的原因是,如果我将它留在中,它将在target/docker/stage中创建一个与我的war文件同名的空目录(在本例中为direct2-batch-match2.11-0.1.0-snapshot.war)。这允许Dockerfile在docker构建中正常工作,但是war文件的内容不包括在构建中。 我在Mac OS X上运行,我想知道这

  • 每个 Vue 实例在被创建时都要经过一系列的初始化过程——例如,需要设置数据监听、编译模板、将实例挂载到 DOM 并在数据变化时更新 DOM 等。同时在这个过程中也会运行一些叫做生命周期钩子的函数,这给了用户在不同阶段添加自己的代码的机会。 比如created钩子可以用来在一个实例被创建之后执行代码: new Vue({ data: { a: 1 }, created: fu

  • 目标目录中生成的debian包没有绑定cron。 我参考了这份debian文档(http://www.debian.org/doc/manuals/maint-guide/dother.en.html#crond) 我是不是漏了什么?如何使sbt-native-package拾取成为cron作业?

  • 在实际项目中,linuxPackageMappings相当复杂,这是我的问题。项目之间的差异。当我将build.sbt加载到sbt中时,我得到错误 第53行和第72行标记在上面包含的build.sbt片段I中。 我不知道的事情我在这方面不够熟练,不知道为什么项目有sbt-assembly和sbt-package Manager。我已经对plugins.sbt中的sbt-assembly进行了注释,

  • 问题内容: 随着AngularJS V1.7的发布,已经不建议使用和取消预定义绑定的选项: 由于38f8c9, 指令绑定在构造函数中不再可用 。 迁移代码: * 如果指定,则需要首先迁移代码,以便将标志翻转到。有关如何执行此操作的说明,请参见 “从1.5迁移到1.6”指南。之后,删除该语句。 — AngularJS开发人员指南- 迁移至V1.7-编译 由于bcd0d4的缘故,默认情况下在控制器实例