Scala Intellij中的SBT和外部库
我正在启动一个Scala项目,我正在使用SBT和Intellij13作为我的IDE 我有以下build.sbt文件,但在运行“sbt更新”之后,我似乎无法在“外部库”中显示sbt“libraryDependencies”部分中的依赖项 以下是my build.sbt:Scala Intellij中的SBT和外部库,scala,intellij-idea,Scala,Intellij Idea,我正在启动一个Scala项目,我正在使用SBT和Intellij13作为我的IDE 我有以下build.sbt文件,但在运行“sbt更新”之后,我似乎无法在“外部库”中显示sbt“libraryDependencies”部分中的依赖项 以下是my build.sbt: name := "myapp-scala" version := "1.0" scalaVersion := "2.10.3" resolvers += "spray repo" at "http://repo.spray.
name := "myapp-scala"
version := "1.0"
scalaVersion := "2.10.3"
resolvers += "spray repo" at "http://repo.spray.io"
resolvers += "spray nightlies" at "http://nightlies.spray.io"
libraryDependencies ++= Seq(
"com.typesafe.akka" %% "akka-actor" % "2.2.0",
"com.typesafe.akka" %% "akka-slf4j" % "2.2.0",
"ch.qos.logback" % "logback-classic" % "1.0.13",
"io.spray" % "spray-can" % "1.2-20130712",
"io.spray" % "spray-routing" % "1.2-20130712",
"io.spray" %% "spray-json" % "1.2.3",
"org.specs2" %% "specs2" % "1.14" % "test",
"io.spray" % "spray-testkit" % "1.2-20130712" % "test",
"com.typesafe.akka" %% "akka-testkit" % "2.2.0" % "test",
"com.novocode" % "junit-interface" % "0.7" % "test->default",
"org.scalautils" % "scalautils_2.10" % "2.0",
"org.scalatest" % "scalatest_2.10" % "2.0" % "test"
)
scalacOptions ++= Seq(
"-unchecked",
"-deprecation",
"-Xlint",
"-Ywarn-dead-code",
"-language:_",
"-target:jvm-1.7",
"-encoding", "UTF-8"
)
谁能给我指出正确的方向吗
要将Sbt与Intellij IDEA集成,您需要使用此插件:
它为您提供Sbt任务
gen idea
,该任务将生成在项目中配置idea所需的文件。开始使用idea 13和Sbt
项目的最佳方法是:
- 确保已安装
插件sbt
- 如果已安装,则只需启动sbt项目:
我在Intellice 14.0.2上也遇到了同样的问题
build.sbt和project/build.scala文件下的项目/应用程序名称必须相同。这帮助我解决了这个问题。类似于@samspired所说的
我刚刚将sbt.Project变量名与项目模块名的名称完全相同,它解决了这个问题。
转到文件->项目结构->模块
看看模块名是什么—(它不必像项目目录名,但如果不更改,可能就是它)
你有什么版本的scala插件和IDEA(13..What?)吗?scala插件版本0.26.361 Intellij版本13.0.1我只是对IDEA 13.1.1有同样的问题,刷新SBT项目为我做到了(查看->工具窗口->SBT->刷新所有SBT项目)没有。没有任何sbt到idea的转换。添加idea插件后运行gen idea任务确实有效。我读过类似于om nom提到的WWH的评论。至少在我的情况下,我确实需要安装插件并运行sbt任务。我只是将build.sbt放在一个目录中,并使用IDEA中的“导入项目”选项,然后选择build.sbt,它似乎为我解决了其余的问题……是的,但在IDEA 13中不需要这样做。
// this file is in the path of "../Somewhere_in_file_system/MyProjectName/build.sbt"
lazy val MyProjectName /*this is the module name*/ = (project in file("."))
.settings(
scalaVersion := "2.11.8",
name := "com-company-blabla-myproject" //..... and all the other sbt properties
)