简单工程使用sbt公共库(sbt-assembly)

时间:2021-11-10 05:36:21

只是为了简单实现一个算法,想用到breeze算法库。想把breeze当做external libraryies直接导入工程。可是官网没有,网上搜索更多的是在sbt工程或maven工程下。

后来实现目标。

两种途径:第一种也是最笨最直接可后期却最方便的方法:新建一个sbt工程,导入breeze库,随后sbt-assembly打包。这整个包就可以当做breeze库文件了,一文件在手,breeze我有!

但是sbt assembly时,出了问题。assembly无法解析的符号。

解决方案: 找到工程目录下project/plugins.sbt.(没有的话,新建一个文本文档改名就好)

加入addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.11.2")

在根目录下sbt assembly,就ok。

回到根目录下:sbt:
set scalaVersion := "2.10.4" // or 2.11.5 /// 设置scala版本。
set libraryDependencies += "org.scalanlp" %% "breeze" % "0.12" ///  导入breeze算法库,还有个图形库,导入总是出问题,先不导入,目前不太用的到。
console ///  运行有breeze库的scala repl
assembly /// 整个工程打包。

完成上述步骤,就能在target目录下找到这个空工程的包了,有42M,是breeze核心算法库和所有依赖库。

IDEA直接导入外部jar包,问题解决。

第二种方法,方便快捷,不过后期迁移可能麻烦些。IDEA直接导入Maven库,搜索找到breeze,选择合适版本,等待下载,OK。这种方法会从maven库里将所有用到的依赖库全部down下来,能看到目标输出文件夹里,一大堆的jar包。后期换个环境,整体迁移导入也是可以的。

亲测可用。

下载地址