Sbt-assembly未解决的依赖,Scala

时间:2015-09-22 15:03:03

标签: scala plugins sbt sbt-assembly

我正在安装Sbt-Assembly,但现在卡住了。

Sbt Version (from 'sbt about'): 0.13.8
Current project is built against scala 2.11.6
Sbt, sbt plugins, and build definitions are using Scala 2.10.4

的项目/ assembly.sbt

   addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.0")
   resolvers += Resolver.url("bintray-sbt-plugins", url("http://dl.bintray.com/sbt/sbt-plugin-releases"))(Resolver.ivyStylePatterns)

build.sbt

   scalaVersion in ThisBuild := "2.11.6"

〜/名.bst / 0.13 / global.sbt

   scalaVersion := "2.11.6"

我意识到sbt-assembly是针对scala 2.10的。如果我将我的项目更改为scala 2.10,我有2.10的新不可用依赖项,这是不可取的。有没有办法配置我的项目只使用2.10组装插件?

  ==== bintray-sbt-plugins: tried
  http://dl.bintray.com/sbt/sbt-plugin-releases/com.eed3si9n/sbt-assembly/scala_2.11/sbt_0.13/0.14.0/ivys/ivy.xml

  ::::::::::::::::::::::::::::::::::::::::::::::
  ::          UNRESOLVED DEPENDENCIES         ::
  ::::::::::::::::::::::::::::::::::::::::::::::
  :: com.eed3si9n#sbt-assembly;0.14.0: not found
  ::::::::::::::::::::::::::::::::::::::::::::::

  Note: Some unresolved dependencies have extra attributes.  
  Check that these dependencies exist with the requested attributes.

      com.eed3si9n:sbt-assembly:0.14.0 (scalaVersion=2.11, sbtVersion=0.13)

4 个答案:

答案 0 :(得分:10)

只需从scalaVersion移除global.sbt

由于SBT is recursive在构建构建文件时使用了来自scalaVersion的{​​{1}},因为SBT 0.13是使用Scala 2.10构建的,因此所有SBT插件都是如此。

答案 1 :(得分:4)

我遇到了类似的问题,在项目的根目录中,addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.3")而不是project/plugins.sbt添加plugins.sbt有什么帮助。

答案 2 :(得分:1)

我有类似的错误。改变sbt-assembly版本(从0.14.3到0.14.5)有效。我的sbt版本是1.0.3,我用过: addSbtPlugin(“com.eed3si9n”%“sbt-assembly”%“0.14.5”)

答案 3 :(得分:1)

只是根本不使用 sbt-assembly! :) Flat-jars在合并期间导致冲突,需要使用assemblyMergeStrategy解决。 使用sbt提供的二进制分发格式插件,使您能够以二进制脚本dmg,msi和tar.gz进行分发。

查看sbt-native-packager