【问题标题】:Error in erasure phase when compiling Scala in IntelliJ 13在 IntelliJ 13 中编译 Scala 时擦除阶段出错
【发布时间】:2014-04-03 20:43:57
【问题描述】:

当我运行sbt 任务compileassembly 时,我没有看到任何编译器错误并且我得到了一个有效的jar。当我从 IntelliJ 13.1.1 #UI-135.480 运行运行配置时,我看到来自 scalac 的以下错误。

我尝试运行 sbt clean,使缓存无效,杀死所有 nailgun runner,重新启动 IntelliJ IDEA。我现在总是看到这个错误。我之前遇到过类似的问题,解决它的唯一方法是从我的计算机中删除每个 IntelliJ 文件并重新安装它。我希望这次我不必这样做。在此之前,我将在 IntelliJ 12 中尝试一下。

你有什么想法吗?

错误:scalac:错误:断言失败: 编译时:/code/zensey/backend/common/CareDataExchange/src/test/scala/com/careverge/cigna/NotifierTest.scala 阶段期间:擦除 库版本:2.10.3 版 编译器版本:版本 2.10.3 重构参数:-deprecation -language:experimental.macros -feature -classpath Giant:ass:classpath -unchecked -bootclasspath /Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre/ lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre/lib/sunrsasign.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/ jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/ Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/ Contents/Home/jre/lib/JObjC.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre/classes:/Users/AudaxLoaner1/.sbt/boot/scala-2.10.3/ lib/scala-library.jar 打字机的最后一棵树:TypeTree(trait Seq) 符号:包集合中的特征序列(标志:抽象)符号定义: 抽象特征 Seq[+A] 用 Iterable[A] 扩展 PartialFunction[Int,A] 与 GenSeq[A] 与 GenericTraversableTemplate[A,Seq] 与 SeqLike[A,Seq[A]] tpe:序列 符号所有者:特征 Seq -> 包集合 上下文所有者:方法 convertToStringShouldWrapper -> 类 CareMailNotifierUtilTest -> 包 cigna == 封闭模板或块 == Apply( // 覆盖隐式 def convertToStringShouldWrapper(o: String): 特质 ShouldMatchers 中的 ShouldMatchers.this.StringShouldWrapper, tree.tpe=org.scalatest.matchers.ShouldMatchers#StringShouldWrapper
CareMailNotifierUtilTest.this."convertToStringShouldWrapper" // 覆盖隐式 def convertToStringShouldWrapper(o: String): 特质 ShouldMatchers 中的 ShouldMatchers.this.StringShouldWrapper, 树.tpe=(o: 字符串)org.scalatest.matchers.ShouldMatchers#StringShouldWrapper "o" // o: String, tree.tpe=String ) == 树的扩展类型 == TypeRef( TypeSymbol( 抽象特征 Seq[+A] 扩展 PartialFunction[Int,A] 与 Iterable[A] 与 GenSeq[A] 与 GenericTraversableTemplate[A,Seq] 与 SeqLike[A,Seq[A]] ) 归一化 = PolyType( typeParams = List(TypeParam(+A)) 结果类型 = 类型参考( 类型符号( 抽象特征 Seq[+A] 扩展 PartialFunction[Int,A] 与 Iterable[A] 与 GenSeq[A] 与 GenericTraversableTemplate[A,Seq] 与 SeqLike[A,Seq[A]]

  )
  args = List(TypeParamTypeRef(TypeParam(+A)))
)   ) ) class StringShouldWrapper java.lang.AssertionError: assertion failed: 
 while compiling: /code/zensey/backend/common/CareDataExchange/src/test/scala/com/careverge/cigna/NotifierTest.scala
    during phase: erasure
 library version: version 2.10.3
compiler version: version 2.10.3   reconstructed args: -deprecation -language:experimental.macros -feature -classpath giant:ass:classpath

-未选中 -bootclasspath /Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home /jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre/lib/sunrsasign.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents /Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk /Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25 .jdk/Contents/Home/jre/lib/JObjC.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre/classes:/Users/AudaxLoaner1/.sbt/boot/scala-2.10 .3/lib/scala-library.jar 打字机的最后一棵树:TypeTree(trait Seq) 符号:包集合中的特征序列(标志:抽象)符号定义: 抽象特征 Seq[+A] 用 Iterable[A] 扩展 PartialFunction[Int,A] 与 GenSeq[A] 与 GenericTraversableTemplate[A,Seq] 与 SeqLike[A,Seq[A]] tpe:序列 符号所有者:特征 Seq -> 包集合 上下文所有者:方法 convertToStringShouldWrapper -> 类 CareMailNotifierUtilTest -> 包 cigna == 封闭模板或块 == Apply( // 覆盖隐式 def convertToStringShouldWrapper(o: String): 特质 ShouldMatchers 中的 ShouldMatchers.this.StringShouldWrapper, tree.tpe=org.scalatest.matchers.ShouldMatchers#StringShouldWrapper
CareMailNotifierUtilTest.this."convertToStringShouldWrapper" // 覆盖隐式 def convertToStringShouldWrapper(o: String): 特质 ShouldMatchers 中的 ShouldMatchers.this.StringShouldWrapper, 树.tpe=(o: 字符串)org.scalatest.matchers.ShouldMatchers#StringShouldWrapper "o" // o: String, tree.tpe=String ) == 树的扩展类型 == TypeRef( TypeSymbol( 抽象特征 Seq[+A] 扩展 PartialFunction[Int,A] 与 Iterable[A] 与 GenSeq[A] 与 GenericTraversableTemplate[A,Seq] 与 SeqLike[A,Seq[A]] ) 归一化 = PolyType( typeParams = List(TypeParam(+A)) 结果类型 = 类型参考( 类型符号( 抽象特征 Seq[+A] 扩展 PartialFunction[Int,A] 与 Iterable[A] 与 GenSeq[A] 与 GenericTraversableTemplate[A,Seq] 与 SeqLike[A,Seq[A]]

  )
  args = List(TypeParamTypeRef(TypeParam(+A)))
)   ) ) class StringShouldWrapper     at scala.tools.nsc.transform.AddInterfaces.transformMixinInfo(AddInterfaces.scala:213)

在 scala.tools.nsc.transform.Erasure.transformInfo(Erasure.scala:329) 在 scala.tools.nsc.transform.InfoTransform$Phase$$anon$1.transform(InfoTransform.scala:38) 在 scala.reflect.internal.Symbols$Symbol.rawInfo(Symbols.scala:1312) 在 scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1239) 在 scala.reflect.internal.Types$ClassTypeRef$class.baseType(Types.scala:2186) 在 scala.reflect.internal.Types$TypeRef$$anon$6.baseType(Types.scala:2544) 在 scala.reflect.internal.Types$class.firstTry$1(Types.scala:6058) 在 scala.reflect.internal.Types$class.isSubType2(Types.scala:6222) 在 scala.reflect.internal.Types$class.isSubType(Types.scala:5831) 在 scala.reflect.internal.SymbolTable.isSubType(SymbolTable.scala:13) 在 scala.reflect.internal.Types$Type.$less$colon$less(Types.scala:872) 在 scala.tools.nsc.transform.Erasure$Eraser.scala$tools$nsc$transform$Erasure$Eraser$$adaptToType(Erasure.scala:690) 在 scala.tools.nsc.transform.Erasure$Eraser.adapt(Erasure.scala:816) 在 scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5626) 在 scala.tools.nsc.typechecker.Typers$Typer.transformedOrTyped(Typers.scala:5811) 在 scala.tools.nsc.typechecker.Typers$Typer.typedDefDef(Typers.scala:2256) 在 scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5535) 在 scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:835) 在 scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5608) 在 scala.tools.nsc.typechecker.Typers$Typer.scala$tools$nsc$typechecker$Typers$Typer$$typedStat$1(Typers.scala:2927) 在 scala.tools.nsc.typechecker.Typers$Typer$$anonfun$60.apply(Typers.scala:3031) 在 scala.tools.nsc.typechecker.Typers$Typer$$anonfun$60.apply(Typers.scala:3031) 在 scala.collection.immutable.List.loop$1(List.scala:170) 在 scala.collection.immutable.List.mapConserve(List.scala:186) 在 scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:3031) 在 scala.tools.nsc.typechecker.Typers$Typer.typedTemplate(Typers.scala:1918) 在 scala.tools.nsc.typechecker.Typers$Typer.typedClassDef(Typers.scala:1758) 在 scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5549) 在 scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:835) 在 scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5608) 在 scala.tools.nsc.typechecker.Typers$Typer.scala$tools$nsc$typechecker$Typers$Typer$$typedStat$1(Typers.scala:2927) 在 scala.tools.nsc.typechecker.Typers$Typer$$anonfun$60.apply(Typers.scala:3031) 在 scala.tools.nsc.typechecker.Typers$Typer$$anonfun$60.apply(Typers.scala:3031) 在 scala.collection.immutable.List.loop$1(List.scala:170) 在 scala.collection.immutable.List.mapConserve(List.scala:186) 在 scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:3031) 在 scala.tools.nsc.typechecker.Typers$Typer.typedPackageDef$1(Typers.scala:5267) 在 scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5553) 在 scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:835) 在 scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5608) 在 scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5670) 在 scala.tools.nsc.transform.Erasure$ErasureTransformer$$anonfun$transform$2.apply(Erasure.scala:1291) 在 scala.tools.nsc.transform.Erasure$ErasureTransformer$$anonfun$transform$2.apply(Erasure.scala:1287) 在 scala.reflect.internal.SymbolTable.atPhase(SymbolTable.scala:207) 在 scala.reflect.internal.SymbolTable.afterPhase(SymbolTable.scala:216) 在 scala.tools.nsc.transform.Erasure$ErasureTransformer.transform(Erasure.scala:1287) 在 scala.tools.nsc.transform.Erasure$ErasureTransformer.transform(Erasure.scala:888) 在 scala.tools.nsc.ast.Trees$Transformer.transformUnit(Trees.scala:227) 在 scala.tools.nsc.transform.Transform$Phase.apply(Transform.scala:30) 在 scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:464) 在 scala.tools.nsc.Global$GlobalPhase$$anonfun$run$1.apply(Global.scala:431) 在 scala.tools.nsc.Global$GlobalPhase$$anonfun$run$1.apply(Global.scala:431) 在 scala.collection.Iterator$class.foreach(Ite​​rator.scala:727) 在 scala.collection.AbstractIterator.foreach(Ite​​rator.scala:1157) 在 scala.tools.nsc.Global$GlobalPhase.run(Global.scala:431) 在 scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1583) 在 scala.tools.nsc.Global$Run.compileUnits(Global.scala:1557) 在 scala.tools.nsc.Global$Run.compileSources(Global.scala:1553) 在 scala.tools.nsc.Global$Run.compile(Global.scala:1662) 在 xsbt.CachedCompiler0.run(CompilerInterface.scala:126) 在 xsbt.CachedCompiler0.run(CompilerInterface.scala:102) 在 xsbt.CompilerInterface.run(CompilerInterface.scala:27​​) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:606) 在 sbt.compiler.AnalyzingCompiler.call(AnalyzingCompiler.scala:102) 在 sbt.compiler.AnalyzingCompiler.compile(AnalyzingCompiler.scala:48) 在 sbt.compiler.AnalyzingCompiler.compile(AnalyzingCompiler.scala:41) 在 org.jetbrains.jps.incremental.scala.local.IdeaIncrementalCompiler.compile(IdeaIncrementalCompiler.scala:28) 在 org.jetbrains.jps.incremental.scala.local.LocalServer.compile(LocalServer.scala:25) 在 org.jetbrains.jps.incremental.scala.remote.Main$.make(Main.scala:58) 在 org.jetbrains.jps.incremental.scala.remote.Main$.nailMain(Main.scala:21) 在 org.jetbrains.jps.incremental.scala.remote.Main.nailMain(Main.scala) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:606) 在 com.martiansoftware.nailgun.NGSession.run(NGSession.java:319)

【问题讨论】:

  • 您找到解决方案了吗?我也遇到了类似的问题。
  • 不。我刚刚用火杀死了 IntelliJ 并删除了所有内容。

标签: intellij-idea scala-2.10 intellij-13


【解决方案1】:

唯一对我有帮助的是删除项目中的所有“目标”目录并再次运行compile(没有帮助的步骤包括使缓存无效、重新加载项目和运行clean)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-21
    • 1970-01-01
    • 2011-11-12
    • 2018-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多