我使用sbt-buildinfo plugin从我的构建定义生成Scala源代码,允许我从Scala代码引用项目名称、版本等。
它通过生成一个包含以下内容的文件BuiltInfo.scala来实现此目的:
package hello
case object BuildInfo {
val name = "helloworld"
val version = "0.1-SNAPSHOT"
val scalaVersion = "2.10.3"
val sbtVersion = "0.13.2"
}
在……里面
target/scala-2.10/src_managed/main/sbt-buildinfo/BuildInfo.scala.
所有的东西都被编译了,我可以引用这些函数。
但是,IntelliJ Idea不会将BuildInfo.scala识别为托管源文件,因此它将停止向我显示错误。你知道怎么做吗?
谢谢!
发布于 2014-06-17 03:39:51
Grega,你在一个Play框架项目中工作吗?或者,您是否有任何SBT子项目?我没有一个完整的答案,但可能有线索。
当我使用sbt-buildinfo和sbt-scalaxb时,同样的问题也会出现在我的IDEA项目中。令人沮丧的是,它断断续续地起作用-通常是在进行了大量的修修补补之后,但莫名其妙地停止了。
我最终深入挖掘了一下(最终向JetBrains发布了错误报告SCL-7182 ),并注意到根本原因是有一个子项目。当存在时,IDEA不能正确地识别根项目的src_managed
,但可以识别子项目。
目前的解决方法是使用项目结构对话框手动将正确的src_managed
目录添加到项目的源代码中。
作为参考,我在IntelliJ IDEA 13.1.3上运行Scala插件的0.38.437版。
https://stackoverflow.com/questions/23957955
复制相似问题