sbt添加依赖

参考

https://www.scala-sbt.org/1.x/docs/zh-cn/Library-Dependencies.html

有两种方式
非托管依赖:放在lib目录下的jar包
托管依赖:配置在构建定义中,并且会自动从仓库中下载

非托管依赖
  1. 将jar包放在lib文件下
  2. 如果需要修改lib的名称为custom_lib,在build.sbt文件中添加
unmanagedBase := baseDirectory.value / "custom_lib"

其中baseDirectory表示项目的根目录

托管依赖

sbt使用Apache Ivy实现托管依赖,sbt默认使用标准的Maven2仓库

libraryDependencies ++= Seq(
  groupID % artifactID % revision,
  groupID % otherID % otherRevision
)
或
libraryDependencies += groupID % artifactID % revision % configuration
添加额外仓库

类似 resolvers += name at location

resolvers += "Sonatype OSS Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots"

也可以用来添加本地Maven仓库

resolvers += "Local Maven Repository" at "file://"+Path.userHome.absolutePath+"/.m2/repository"

例子

name := "ProjectName"
version := "0.1"
scalaVersion := "2.10.6"

libraryDependencies ++= Seq( //依赖库
  "org.apache.spark" % "spark-core_2.10" % "1.6.0" % "provided",
  "com.*****.******" % "common" % "1.1.4-SNAPSHOT" % "provided", //额外仓库中的依赖
  "org.apache.hadoop" % "hadoop-client" % "2.6.4" % "provided"
)

resolvers ++= Seq( //额外仓库添加
  "Admonitor Repository" at "http://maven.mzsvn.com/repository/admonitor",
  "Local Maven Repository" at "file:///home/dwj/.m2/repository"
)

publishMavenStyle := true
publishArtifact in Test := false

publishTo <<= version { (v: String) =>
  val nexus = "http://maven.mzsvn.com/"
  if (v.trim.endsWith("SNAPSHOT"))
    Some("snapshots" at nexus + "repository/admonitor-snapshots")
  else
    Some("releases"  at nexus + "repository/admonitor-releases")
}
  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值