val scalaToolsSnapshots = "Scala-Tools Maven2 Snapshots Repository" at "http://scala-tools.org/repo-snapshots" val specs = "org.scala-tools.testing" % "specs_2.9.0-1" % "1.6.8" % "test"
这是什么意思?
uurity8g1#
这是sbt(简单构建工具)DSL,它定义了项目的托管依赖关系。格式与maven非常相似:第一行说明在哪里找到仓库,第二行定义依赖关系,如"groupId" % "artifactId" % "version" % "scope"有关详细信息,请参阅sbt wiki page(部分 * 托管托管配置 *)
"groupId" % "artifactId" % "version" % "scope"
qgelzfjb2#
您还可以使用以下命令简化此声明:
scalaVersion := "2.9.0-1" scalaToolsSnapshots := "Scala-Tools Maven2 Snapshots Repository" at "http://scala-tools.org/repo-snapshots" specs := "org.scala-tools.testing" %% "specs" % "1.6.8" % "test"
%%将指定给sbt使用一个与你的项目scala版本二进制兼容的specs版本。你应该考虑使用它,特别是如果你计划升级scala版本,或者你计划发布一个针对多个scala版本的库。在后台,第一个String被隐式地转换为GroupID,%%方法将下一个String转换为GroupArtifactId,下面的%创建了一个ModuleID,最后的%将作用域添加到ModuleID。
%%
GroupID
GroupArtifactId
%
ModuleID
mrfwxfqh3#
这就是sbt(简单构建工具)。'at'方法是在字符串上定义的,并返回Resolver。'%'方法是在字符串上定义的,并返回ModuleID。
3条答案
按热度按时间uurity8g1#
这是sbt(简单构建工具)DSL,它定义了项目的托管依赖关系。
格式与maven非常相似:第一行说明在哪里找到仓库,第二行定义依赖关系,如
"groupId" % "artifactId" % "version" % "scope"
有关详细信息,请参阅sbt wiki page(部分 * 托管托管配置 *)
qgelzfjb2#
您还可以使用以下命令简化此声明:
%%
将指定给sbt使用一个与你的项目scala版本二进制兼容的specs版本。你应该考虑使用它,特别是如果你计划升级scala版本,或者你计划发布一个针对多个scala版本的库。
在后台,第一个String被隐式地转换为
GroupID
,%%
方法将下一个String转换为GroupArtifactId
,下面的%
创建了一个ModuleID
,最后的%
将作用域添加到ModuleID
。mrfwxfqh3#
这就是sbt(简单构建工具)。
'at'方法是在字符串上定义的,并返回Resolver。'%'方法是在字符串上定义的,并返回ModuleID。