gpt4 book ai didi

java - 如何在 Eclipse 中将 Scala 库打包成可运行的 jar

转载 作者:行者123 更新时间:2023-11-30 06:36:54 24 4
gpt4 key购买 nike

问题

我在使用 Scala 在 Eclipse 中创建可运行的 jar 文件时遇到了一些问题。

在 Eclipse 中,我有一个 Scala 项目,我希望将其制作成可运行的 jar 文件。当我运行 jar 文件时,它无法找到 Scala 标准库。

详细信息

IDE - 我正在使用Scala IDE用于扩展 Eclipse 以使用 Scala。

设置 - 要导出,请右键单击我的项目并向下导航“导出”>“可运行 Jar 文件”。我选择运行配置并设置桌面路径。我选择了“提取”库处理选项。我的运行配置是一个 Java 应用程序,其中选择了我的主类。我的主类是用 Java 编写的,而项目的其余部分是用 Scala 编写的。然后,我通过 Windows CMD 运行创建 jar 文件 java -jar myjarfile.jar .

错误 - 当我运行 jar 文件时 NoClassDefFoundError当程序第一次遇到 Scala 标准库类(在我的例子中为 scala.util.Random)时抛出。该程序可以正常运行我的 Scala 文件,甚至可以运行我在 Eclipse 下作为项目依赖项添加的另一个项目的文件。当我使用 scala myjarfile.jar 运行 jar 文件时它找不到主类。即使使用scala确实有效,但这是 Not Acceptable ,因为用户可能没有安装任何与 Scala 相关的东西。

我在 Stack Overflow 上研究过类似的问题,但没有一个有效。那么如何访问 jar 文件中的 Scala 标准库呢?将 Scala 标准库打包到我的 jar 中听起来是一个不错的选择,但我不知道如何做到这一点。

最佳答案

使用 SBT 为 Scala 打包可运行 jar 有 2 个选项:

  1. sbt-assembly将您的类文件打包为a fat jar,它还将打包 Scala 标准库。
  2. SBT Native Packager它可以将类文件打包为可运行的包,包括:ziptgzRPMDEPDocker

关于java - 如何在 Eclipse 中将 Scala 库打包成可运行的 jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45069769/

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