2014-06-11 2 views
5

내가 스칼라 시험 전에 메이크업 단계에서, 인 IntelliJ의 IDEA 내부 ScalaTest 스위트를 실행하고있는 동안 어설 션 실패, 나는이 문제에 실행Scalac : IDEA에서 Scalatest을 실행이

Error:scalac: Error: assertion failed: List(object package$DebugNode, object package$DebugNode) 
     java.lang.AssertionError: assertion failed: List(object package$DebugNode, object package$DebugNode) 
     at scala.reflect.internal.Symbols$Symbol.suchThat(Symbols.scala:1678) 
     at scala.reflect.internal.Symbols$ClassSymbol.companionModule0(Symbols.scala:2988) 
     at scala.reflect.internal.Symbols$ClassSymbol.companionModule(Symbols.scala:2991) 
     at scala.tools.nsc.backend.jvm.GenASM$JPlainBuilder.genClass(GenASM.scala:1371) 
     at scala.tools.nsc.backend.jvm.GenASM$AsmPhase.run(GenASM.scala:120) 
     at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1583) 
     at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1557) 
     at scala.tools.nsc.Global$Run.compileSources(Global.scala:1553) 
     at scala.tools.nsc.Global$Run.compile(Global.scala:1662) 
     at xsbt.CachedCompiler0.run(CompilerInterface.scala:126) 
     at xsbt.CachedCompiler0.run(CompilerInterface.scala:102) 
     at xsbt.CompilerInterface.run(CompilerInterface.scala:27) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
     at java.lang.reflect.Method.invoke(Method.java:606) 
     at sbt.compiler.AnalyzingCompiler.call(AnalyzingCompiler.scala:102) 
     at sbt.compiler.AnalyzingCompiler.compile(AnalyzingCompiler.scala:48) 
     at sbt.compiler.AnalyzingCompiler.compile(AnalyzingCompiler.scala:41) 
     at org.jetbrains.jps.incremental.scala.local.IdeaIncrementalCompiler.compile(IdeaIncrementalCompiler.scala:28) 
     at org.jetbrains.jps.incremental.scala.local.LocalServer.compile(LocalServer.scala:25) 
     at org.jetbrains.jps.incremental.scala.remote.Main$.make(Main.scala:64) 
     at org.jetbrains.jps.incremental.scala.remote.Main$.nailMain(Main.scala:22) 
     at org.jetbrains.jps.incremental.scala.remote.Main.nailMain(Main.scala) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
     at java.lang.reflect.Method.invoke(Method.java:606) 
     at com.martiansoftware.nailgun.NGSession.run(NGSession.java:319) 

것은 그것으로 인해 JetBrains의 오류가 증분 컴파일? 또는 내가 실행했던 테스트 스위트와 관련이 있습니까? 스택 트레이스에있는 정보는 테스트를 거친 TestSuite/프로젝트와 관련이 없습니다.

+0

은 물론 컴파일러 오류처럼 보이는 TestSQLContext.scala 주장의

세부 사항에 심판을하지 못했습니다. 깨끗한 빌드로 해결할 수 있습니까? sbt에서 컴파일? – ggovan

+0

@ggovan sbt clean/assembly를 사용하여 터미널에서 프로젝트를 정리하고 다시 작성했지만 프로젝트 내부에서 ScalaTest Suite를 실행하려고하면이 오류가 다시 발생했습니다. –

답변

4

Interllij IDEA 증분 컴파일로 인한 오류라고 생각합니다. Spark을 처음 만들었을 때 같은 오류가 발생했습니다.

환경 설정> 스칼라로 이동하여 SBT 증분 컴파일러, 이름 Hasing : 기본값, 컴파일 순서 : 혼합으로 인컬레이션 컴파일을 설정하십시오. 코드를 다시 컴파일하면 모든 것이 OK였습니다.

+0

이클립스에서는 IDEA에서 똑같은 경험을했지만 (실수로 수정 ​​한 것과 동일한 변경 사항) Eclipse에서는 오류없이 완료되었습니다. –

+0

"Name Hashing"이란 무엇을 의미합니까? IDEA14.1.5에서이 이름을 찾을 수 없습니다. IDE에서 Make를 다시 하시겠습니까? – ray6080

0

명령에서 스파크를 작성한 후 IDEA로 가져 왔기 때문에 다시 작성하면 두 가지 오류가 표시되므로 매우 쉽습니다. 명령 줄에서 스파크의 루트 폴더 아래에서 "mvn clean"을 실행하기 만하면됩니다. IDEA에서 다시 확인하면 오류가 사라집니다. 리눅스 심판에 빌드 스파크 1.4.1에 대해 http://www.dataguru.cn/thread-537920-1-1.html

및 자세한 내용 : http://www.dataguru.cn/thread-539343-1-1.html

fredericyuan