我正在尝试使用scala 2.11.7在intellij中构建一个项目。我已将select case when myFunction(someField) in ('val1', 'val2', 'val3') then 'Option1' when someOtherField = 'Val4' then 'Option2' else null end as someColumn from dual
设置为scalaVersion
,但当我检查外部库时,我可以看到2.11.7
。
我是否需要在scala-compiler:2.11.0
中声明scala-compiler:2.11.7
作为依赖项? docs令人困惑,似乎在说我确实需要而不是连续段落:
使用标准库以外的Scala依赖项时,请添加它 作为正常的托管依赖。例如,依赖于Scala 编译器,
libraryDependencies + =“org.scala-lang”%“scala-compiler”% scalaVersion.value
和
为了编译Scala代码,请运行scaladoc,并提供Scala REPL,sbt需要scala-compiler jar。这不应该是正常的 项目的依赖关系,因此sbt增加了对scala-compiler的依赖 在特殊的私有scala-tool配置中。
所以...我应该添加还是不添加?
答案 0 :(得分:2)
如果您的项目代码使用scala-compiler
(例如,解析或编译Scala代码,运行REPL等),请添加它。否则,不要。这就是为什么第一个引用说" 当使用除标准库以外的Scala依赖..."
scala-compiler
可能存在,因为您的其他依赖项之一依赖于它(并且该版本是使用Scala 2.11.0编译的)。