使用sbt发布jar文件(第三方)

克里斯汀·施密特(Christian Schmitt)

您好,我有5个jar文件,并尝试使用sbt将它们发布到本地存储库。但是,当我将它们放置在unmanagedBase目录中时,就像lib/它们不会被复制一样publishLocal是否有一种简单的方法可以将它们包括在发布过程中?

目前,maven在此处具有类似的解决方案:http : //maven.apache.org/guides/mini/guide-3rd-party-jars-local.html

马克·哈拉(Mark Harrah)

一种选择是为要发布的每个jar定义一个子项目。让您的主要项目依赖于每个项目。给每个子项目合适的nameversionorganization对于每个子项目,请将其jar放置在类路径上以外的地方,并使输出packageBin成为该jar。

例如(sbt 0.13 build.sbt),

lazy val main = project.dependsOn(subA)

lazy val subA = project.settings(
   name := "third-party",
   organization := "org.example",
   version := "1.4",
   packageBin in Compile := baseDirectory.value / "bin" / "third-party.jar",
   // if there aren't doc/src jars use the following to
   //   avoid publishing empty jars locally
   // otherwise, define packageDoc/packageSrc like packageBin 
   publishArtifact in packageDoc := false,
   publishArtifact in packageSrc := false,
   // tell sbt to put the jar on main's classpath
   //   and not the (empty) class directory
   exportJars := true,
   // set this to not add _<scalaBinaryVersion> to the name
   crossPaths := true
)

这种方法允许您更改jar,subA/bin/third-party.jar并立即使用它,随后publishLocal它将在本地发布。

如果您希望单独在本地发布它,使其不属于项目,则应subA将其定义为独立项目。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用sbt发布jar文件(第三方)

来自分类Dev

使用第三方jar在命令行中执行jar文件

来自分类Dev

如何添加第三方Java JAR文件以在PySpark中使用

来自分类Dev

第三方jar取决于其他第三方jar

来自分类Dev

使用第三方控件

来自分类Dev

使用第三方控件

来自分类Dev

第三方库的使用

来自分类Dev

自发布包中的构建文件夹文件未被第三方项目使用

来自分类Dev

如何将第三方Java库编译为我可以使用的jar文件?

来自分类Dev

Scala SBT 不能使用第三方库

来自分类Dev

更新第三方jar的步骤

来自分类Dev

EJB-JAR中的第三方库

来自分类Dev

Android AAR第三方Jar

来自分类Dev

ClassNotFoundException:在Android中的libs中添加了第三方JAR文件时发生

来自分类Dev

如何添加第三方Java jar以便在pyspark中使用

来自分类Dev

EasyXDM:从第三方服务下载文件

来自分类Dev

防止第三方操纵XML文件

来自分类Dev

与第三方活动共享文件或内容

来自分类Dev

Rails包含第三方Javascript库文件

来自分类Dev

EasyXDM:从第三方服务下载文件

来自分类Dev

CMake - 包含第三方文件

来自分类Dev

使用jquery cookie的第三方cookie

来自分类Dev

在angular指令中使用第三方lib

来自分类Dev

在Jint中使用第三方js库

来自分类Dev

使用第三方库(sbpl)

来自分类Dev

使用GIT进行协作-第三方库

来自分类Dev

使用Firebase隐藏第三方API密钥

来自分类Dev

如何使用第三方@ConfigurationProperties @Bean?

来自分类Dev

使用第三方认证的Laravel Auth