gpt4 book ai didi

scala - 如何在 sbt-native-packager Akka 构建中包含 sigar native 库?

转载 作者:行者123 更新时间:2023-12-02 01:41:33 24 4
gpt4 key购买 nike

我只是好奇是否有一些好的方法可以使用 Akka 包装来做到这一点。

我找到了一些例子 here ,但它是为 rpm build 创建的,我在我的 build.sbt 中使用了这两个插件:

.enablePlugins(AkkaAppPackaging)
.enablePlugins(UniversalPlugin)

实际上,我通过手动将 sigar 库复制到生成应用程序启动脚本的目录找到了一种解决方法。

还需要将 -Djava.library.path=./sigar 设置为 sigar 库所在的适当目录,这可以在 build.sbt 或稍后通过更改 JAVA_OPTS 在生成的脚本中手动更改。

最佳答案

这是我做的

  lazy val sigarJavaOpts = "-Djava.library.path=./sigar"

libraryDependencies ++= Dependencies.sigar

mappings in Universal ++= MappingsHelper directory getClass.getClassLoader.getResource("sigar").getFile

bashScriptExtraDefines += s"""addJava "$sigarJavaOpts" """

javaOptions in run += sigarJavaOpts

请注意,我将 sigar 文件放在我的资源文件夹中。您可能还需要从以下导入

import com.typesafe.sbt.SbtNativePackager.Universal
import com.typesafe.sbt.packager.MappingsHelper
import com.typesafe.sbt.packager.Keys.bashScriptExtraDefines

我还有一个 Dependencies 对象,其中有

  val sigar = Seq(
"org.fusesource" % "sigar" % "1.6.4"
)

关于scala - 如何在 sbt-native-packager Akka 构建中包含 sigar native 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28243919/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com