Scala 与sbt&;管理依赖关系;智能思想

Scala 与sbt&;管理依赖关系;智能思想,scala,intellij-idea,playframework,sbt,Scala,Intellij Idea,Playframework,Sbt,我正在做一个后端项目,第一次使用Scala和IntelliJ IDEA的Play框架 我已经阅读了很多文档和主题: 从堆栈溢出 我不明白如何导入依赖项 当我尝试附加一个新的依赖项时,IntelliJ在它下面加下划线,并显示“未知工件。未解析或索引”,或者显示一个日志并显示“SBT未知导入” 我添加的每个依赖项都来自Maven存储库 以下是build.sbt文件: name := "server" version := "1.0" lazy val `server` = (proje

我正在做一个后端项目,第一次使用Scala和IntelliJ IDEA的Play框架

我已经阅读了很多文档和主题:

  • 从堆栈溢出
我不明白如何导入依赖项

当我尝试附加一个新的依赖项时,IntelliJ在它下面加下划线,并显示“未知工件。未解析或索引”,或者显示一个日志并显示“SBT未知导入”

我添加的每个依赖项都来自Maven存储库

以下是build.sbt文件:

name := "server"

version := "1.0" 

lazy val `server` = (project in file(".")).enablePlugins(PlayScala)

resolvers += "scalaz-bintray" at "https://dl.bintray.com/scalaz/releases"

resolvers += "Akka Snapshot Repository" at "http://repo.akka.io/snapshots/"

resolvers := ("Atlassian Releases" at "https://maven.atlassian.com/public/") +: resolvers.value

scalaVersion := "2.12.2"

libraryDependencies ++= Seq(
  jdbc,
  ehcache,
  ws,
  specs2 % Test,
  guice,
  "org.mongodb.scala" %% "mongo-scala-driver" % "2.1.0",
  "com.mohiva" %% "play-silhouette" % "5.0.2",
  "com.mohiva" %% "play-silhouette-password-bcrypt" % "5.0.2",
  "com.mohiva" %% "play-silhouette-crypto-jca" % "5.0.2",
  "com.mohiva" %% "play-silhouette-persistence" % "5.0.2",
  "com.mohiva" %% "play-silhouette-testkit" % "5.0.2" % "test"
)

unmanagedResourceDirectories in Test <+=  baseDirectory ( _ /"target/web/public/test" )  
name:=“服务器”
版本:=“1.0”
lazy val`server`=(文件中的项目(“.”)。启用插件(PlayScala)
分解器+=“scalaz bintray”athttps://dl.bintray.com/scalaz/releases"
解析程序+=“Akka快照存储库”位于http://repo.akka.io/snapshots/"
解析程序:=(“Atlassian发布”在“https://maven.atlassian.com/public/“”+:解析器.value
规模规避:=“2.12.2”
libraryDependencies++=Seq(
jdbc,
艾希奇,
ws,
规格2%测试,
guice,
“org.mongodb.scala”%%“mongo scala驱动程序”%%“2.1.0”,
“com.mohiva”%%“播放剪影”%%“5.0.2”,
“com.mohiva”%%“播放剪影密码bcrypt”%%“5.0.2”,
“com.mohiva”%%“播放剪影加密jca”%%“5.0.2”,
“com.mohiva”%%“播放剪影持久性”%%“5.0.2”,
“com.mohiva”%%“播放剪影测试套件”%%“5.0.2”%%“测试”
)

Test中的UnmanagedResourceDirectory这些依赖项是使用Play插件定义的速记指定的:

jdbc,
ehcache,
ws,
specs2 % Test,
guice
因此,要使它们正常工作,请确保在
项目
目录中的
.sbt
文件中包含以下行:

addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.10")
这会解决你的问题

额外提示:不需要以下行,因为每个额外的解析器都会降低SBT的速度,所以应该删除它们:

resolvers += "scalaz-bintray" at "https://dl.bintray.com/scalaz/releases"

resolvers += "Akka Snapshot Repository" at "http://repo.akka.io/snapshots/"

resolvers := ("Atlassian Releases" at "https://maven.atlassian.com/public/") +: resolvers.value