Scala 依赖项在项目中不可用
我正试图在我的项目中使用Cloudinary Scala API。我已将其添加到Build.scala中,如下所示Scala 依赖项在项目中不可用,scala,intellij-idea,sbt,Scala,Intellij Idea,Sbt,我正试图在我的项目中使用Cloudinary Scala API。我已将其添加到Build.scala中,如下所示 val main = Project(appName, file(".")).enablePlugins(play.PlayScala) .settings(scoverageSettings:_*) .settings( version := appVersion, libraryDependencies ++= appDependencies,
val main = Project(appName, file(".")).enablePlugins(play.PlayScala)
.settings(scoverageSettings:_*)
.settings(
version := appVersion,
libraryDependencies ++= appDependencies,
javaOptions in Test += "-Dconfig.file=conf/test.conf",
aggregate in Test := false,
resolvers ++= Seq(
"sonatype repo" at "https://oss.sonatype.org/content/repositories/snapshots/"
)
)
其中appDependencies包含
Seq( //A few other unrelated dependencies here
"com.cloudinary" %% "cloudinary-core-scala" % "0.9.6-SNAPSHOT"
)
当我将此项目导入IntelliJ时
- 所有Cloudinary导入都标记为红色
- IntelliJ能够自动完成我的Cloudinary导入,但将它们标记为非项目类(即,我可以搜索Cloudinary类并找到它们,但仅当我选择“搜索非项目类”时)
- 当我运行命令行(sbt compile)时,sbt能够找到cloudinary类并进行编译,而不会出现任何问题
我不知道我在这件事上哪里出了问题。我尝试过不同的Scala版本(我正在使用2.10,尝试过2.11),不同的IntelliJ版本(14.1,15),运行sbt清理,并从头开始重新创建项目。到目前为止,一切都没有改变。尝试从IDEA的“sbt”工具栏强制刷新sbt项目。奇怪的是,我尝试了以下方法 -使缓存无效/重新启动 -将依赖项的版本从0.9.6切换到0.9.7 -克隆新的回购协议,重新创建新的IntelliJ项目
每次行为都是一样的。然而,当我将代码移动到另一个包中时(不管我将代码移动到哪个包),IntelliJ开始拾取类文件。关于什么是错的,我没有一个可靠的理论。IntelliJ有时对SBT有点棘手,尽管最新版本似乎已经改进了很多。通常,当您更改
Build.sbt
时,Idea会通知您项目已更改,以便您可以重新加载它,所有依赖项应在重新加载时自动下载,IDE应从那时起应正确处理所有依赖项…不幸的是,更改我的构建文件(实际上使用Build.scala文件)会触发重新下载,但结果是一样的。试过了。。。没有解决问题。