我如何外化这些播放库

时间:2016-12-05 17:14:57

标签: scala sbt

我开始使用项目/ Settings.scala来帮助清理我的主build.sbt。这是一个带Play后端的scalajs项目,我使用Play的WS&缓存依赖项。在built.sbt中,' string / keyword /' < - 不确定此处是否正确,但wscache正确解析。但是,在我Seq[String] Settings.scala的{​​{1}}中我存储了我的服务器库依赖关系,他们不会。目前我正在使用

   libraryDependencies ++= Seq(ws, cache) ++ Settings.jvmDependencies.value,

有效,但它让我想知道如何将所有内容移动到“设置”或者是否可行。当我在IDE中深入挖掘一层时,我看到例如ws被定义为:

  val ws : sbt.ModuleID = { /* compiled code */ }
对象PlayImport中的

但是我看不到填充sbt的完整/典型依赖关系定义的正确值

最终,我很好奇能否成功导出ws& cache以便我可以在build.sbt

中使用此行
 libraryDependencies ++= Settings.jvmDependencies.value,

2 个答案:

答案 0 :(得分:1)

您可以直接查看Play SBT插件源,这通常是最简单的方法。以下是ws defined

的方式
val ws = component("play-ahc-ws")

其中componentthe same file中定义如下:

def component(id: String) = "com.typesafe.play" %% id % play.core.PlayVersion.current

根据此信息,我们知道当前Play版本的ws依赖关系为"com.typesafe.play" %% "play-ahc-ws" % "2.5.10"

答案 1 :(得分:1)

如果您想在插件中包含所有Play符号 - 这就是您的project/Settings.scala文件 - 只需从Play插件的autoImport member中导入字段:

import play.sbt.Play.autoImport._

这将允许您使用wscache以及插件公开的任何其他符号。