问题标签 [sbt-native-packager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2244 浏览

sbt - 如何在子项目中使用 sbt native packager (sbt 0.13)

我有一个包含大量子项目和外部库依赖项的 sbt 项目。build.sbt像这样:

所以实际上该项目创建了几个程序(“masterserver”,“otherserver”),它们依赖于外部库和该项目本身的子项目的一个子集。

我想要的是启动主服务器或其他服务器所需的一整套 JAR,分别为每个. 所以,我想要例如masterserver/target/<whatever>包含

otherserver/target/<whatever>具有相似内容的 a(它还必须添加lib3.jar,因为othersrv.jar.

怎么做?我可以使用本机打包程序执行此操作吗?在根项目中发布stage什么都不做(因为没有mailClass?)。发出masterserver/state错误消息

我必须承认,我没有从本机打包程序插件文档中得到真正的线索。我怎样才能归档我想要的东西?

编辑:当然,我不受目录的约束。如果我在主target目录中有多个 ZIP 文件,也可以。我只想在一个位置拥有子项目的所有依赖项。

编辑 2:好的,我知道了 Play!框架正是我想要的。它使用 sbt 本机打包程序。如何在使用 Java 作为编程语言的非 Play sbt 处理的项目中归档子项目的递归通用打包?

0 投票
1 回答
745 浏览

playframework - 使用 sbt native packager 的环境特定发行版

我正在尝试使用 Play (2.2) 中提供的 sbt 本机打包程序功能创建/配置特定于环境的发行版(用于开发、质量和生产)。我尝试使用 build.sbt 文件中的以下设置来实现这一点:

在 SBT 控制台中,当我输入“dev:dist”时,我希望只看到“dev”作为输出,并且相应地只看到要使用的相应映射。相反,看起来所有配置中的所有映射都已合并。很可能我不明白配置应该如何在 SBT 中工作。此外,可能有更好的方法可以实现我正在寻找的东西。

0 投票
1 回答
985 浏览

scala - 使用 sbt native-packager 修改 rpm 的安装目录

我正在尝试使用安装在自定义目录中的 sbt-native-packager 构建一个 rpm 包,例如 /opt/myapp 而不是 /usr - 由于内部策略要求。

我有一个 build.sbt 可以构建一个标准的 rpm,但是在修改目录时我很难过。抱歉,我对 scala、sbt 和本地 pacakger 还是很陌生。

我正在使用 mapGenericFilesToLinux 并希望保留其结构 - 只需修改目标目录的第一部分。

我在 git hub 问题中找到了这个代码片段https://github.com/sbt/sbt-native-packager/issues/4#issuecomment-6731183

我相信我想做类似的事情,除了

提前感谢您的帮助

再见帕姆

0 投票
1 回答
742 浏览

scala - 使用 SBT 添加工件以播放项目 - Native Packager Plugin

我正在尝试将工件添加到我的游戏项目中,我查看了几个论坛,看起来这是正确的方法:

但后来我收到编译错误:“...project/Build.scala:26: not found: value dist

我需要在哪里定义它?我在这里想念什么?

附加信息:我的“playProject”是 scala 项目中的一个模块,其中包含一些其他 scala 模块。

0 投票
1 回答
1223 浏览

scala - 使用 sbt native packager 简化 deb 的设置

我正在尝试将我的 scala 主应用程序代码打包为 .deb 文件。该应用程序只能在 ubuntu 机器上运行,所以我并不真正关心 Windows 等。

目前,我正在努力寻找最简单的方法来使用最简单的设置来编译 .deb。假设我的文件夹中有一个简单的object Kernel extends Appscala 文件,该src文件应该包含 jardependencies。

我目前对该项目的基于 scala 的 debian 设置是:

调用有效并创建了debian:package-bin一个 deb,但没有将二进制文件/jar 复制到 deb 中,所以我显然缺少一些配置。我知道仍然缺少 linuxPackageMappings 等,但我想知道是否有更简单的编译配置?usingpackageArchetype.java_server迫使我为 Windows 等包含这么多未使用的变量。我想避免这种情况。

任何建议如何简化仅 deb 构建的设置 + 映射?

0 投票
1 回答
365 浏览

scala - 运行 debian:packageBin 时包含新贵脚本

我想在 ubuntu 机器上将我的 scala 应用程序作为后台服务启动。我目前正在尝试弄清楚如何在我的包任务中 使用JavaServerAppPackaging 设置。

有什么建议,我必须添加什么来在我的 deb 文件中包含新贵脚本?

这是我的项目描述,包括。oneJar 和 debian 构建。

0 投票
2 回答
822 浏览

scala - 使用 deb 文件和 SBT 为生产设置日志记录/配置

我正在寻找使用sbt-native-packager在我的 deb 文件中在生产中设置日志记录/配置的最佳方法。

a.) 我想将我的reference.confandlogback.xml从我的代码存储库复制到/etc/my-app/reference.confor /etc/my-app/logback.xml我想它以某种方式是可能的,linuxPackageMappings但我还找不到一个例子,我仍在努力了解 SBT 和插件如何协同工作。

b.) 我需要告诉我的 jvm 在通过创建的 upstart 启动时我应该使用这个配置和这个 logback 配置 -我如何将参数从 build.scala 传递到 jvm-runscript

这是我当前的项目验证:

谢谢

0 投票
1 回答
490 浏览

scala - 新贵的 daemonUser 在 sbt-native-packager 中不起作用

我正在使用sbt-native-packager创建一个包含所有库的 .deb 包。生成的新贵脚本正在使用root我显然想避免的用户。

我在代码中发现了一个提示,即daemonUser定义了一个 sbt 设置,但我无法为我的 debian 打包设置它。

编译错误是:not found: value daemonUser

任何建议如何为暴发户脚本设置用户?

谢谢

0 投票
1 回答
756 浏览

sbt-native-packager - 如何使用 sbt-native-packager 创建可预测的日志记录位置

我将 sbt-native-packager 与实验性 Java Server 原型一起使用。我正在尝试确定一种访问我的日志文件的传统方式,我想知道是否有人知道这里的常用方法。因为我使用的是 Java Server 原型,所以我得到了一个符号链接 /var/log/$app -> install_dir/$app/log,但是仅仅让 log4j 打开 /var/log/$ 感觉有点脏且不那么便携app/error.log 直接。

[更新]

我最终创建了一个带有运行时路径信息的对象:

在我的主要方法中,我基于新的 MakaraPaths 对象建立了一个系统属性:

我也将它用于我的配置文件:

最终,为了加载日志文件,我使用了系统属性查找:

这让我大部分时间都在我需要的地方。它不是完全可移植的,但它在技术上支持我的用例。(部署到 Ubuntu)

0 投票
1 回答
1559 浏览

scala - 使用 sbt-native-packager 时的配置目录

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

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