【问题标题】:How to create standalone jar file for elastic4s from sources?如何从源代码为 elastic4s 创建独立的 jar 文件?
【发布时间】:2014-06-22 15:10:13
【问题描述】:

我正在尝试从 github 上的 elastic4s 源创建一个独立的 jar 文件。我使用了sbt compile github页面上的详细说明,但我找不到jar文件。

如何使用 sbt 创建 jar 文件,以便将其作为依赖项导入到我的项目中?

【问题讨论】:

    标签: scala sbt


    【解决方案1】:

    compile 任务只会编译项目。

    > help compile
    Compiles sources.
    

    如果您想创建一个 jar 文件并将其用作项目中的依赖项,您有两种方法。

    非托管依赖(不推荐)

    非托管依赖运行+package,它将为每个受支持的 scala 版本创建一个 jar 文件,您可以在项目中将其用作非托管依赖。将 package 生成的 jar 复制到项目中的 lib 文件夹中。

    jar 文件将位于 target/scala-2.11target/scala-2.10,具体取决于您要使用的 Scala 版本。

    发布到本地存储库(推荐但不完善)

    如果你想包含你定制的 elastic4s,作为一个托管依赖,你必须运行+publishLocal。这将与上述相同,但另外会将工件发布到您的本地存储库。假设您使用 version := "1.2.1.1-SNAPSHOT" 构建了它,您只需添加以下内容即可将其包含在您的项目中:

    libraryDependencies += "com.sksamuel.elastic4s" %% "elastic4s" % "1.2.1.1-SNAPSHOT"
    

    这种方法不完美的原因在于,一旦您在 GitHub(或任何其他项目共享平台)上共享了项目,人们就必须自己完成publishLocal 才能构建您的项目。因此,依赖项应该转到官方二进制存储库之一,因此当需要依赖项时,它是从 Internet 下载的。咨询Publishing

    命令前的+字符是什么

    命令中的+是针对cross-building的,如果不使用该命令只会使用项目的build.sbt中声明的scalaVersion执行。

    【讨论】:

    猜你喜欢
    • 2017-07-15
    • 2022-01-14
    • 2012-08-27
    • 1970-01-01
    • 1970-01-01
    • 2012-02-22
    • 1970-01-01
    • 2011-10-23
    • 2021-12-07
    相关资源
    最近更新 更多