[英]Scala syntax error at IntelliJ IDEA, but compile successfully via sbt
我在程序中定义了一个变量
import cats.data.{Kleisli, Xor, XorT}
val a = Kleisli[XorT[TwitterFuture, Exception, ?], String, Int] = Kleisli { (s: String) =>
XorT[TwitterFuture, Exception, Int](TwitterFuture(Xor.Right(123)))
}
我的build.sbt:
addCompilerPlugin("org.scalamacros" % "paradise" % "2.1.0" cross CrossVersion.full)
addCompilerPlugin("org.spire-math" % "kind-projector" % "0.8.0" cross CrossVersion.binary)
addCompilerPlugin("com.milessabin" % "si2712fix-plugin" % "1.2.0" cross CrossVersion.full)
很奇怪,IntelliJ IDEA上出现“类型不匹配”错误。 Type mismatch, expected: (NotInferedA) => NotInferedF[NotInferedB], actual: (String) => XorT[TwitterFuture, Exception, Int]
但是我成功执行了sbt compile
,没有任何错误。
我的IntelliJ IDEA版本: 2016.2.2
有人知道这种情况怎么回事吗? 我该如何解决该问题?
Intellij scala插件很棒,但是沉重的scala代码(类型/隐式/宏魔术)仍然无法正确处理。 您可以在https://youtrack.jetbrains.com/oauth?state=%2Fissues%2FIDEA中创建票证,或为现有票证,然后等待插件补丁。
您也可以自己修补它: https : //github.com/JetBrains/intellij-scala 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.