2015-01-27 9 views
14

Il progetto brezza costruisce multa da riga di comando SBT:Perché IDEA segnala "Errore: scalac: errore durante il caricamento dell'oggetto, dipendenza mancante" oggetto scala nel mirror del compilatore "" edificio scala breeze?

sbt package 
... 
info] Done packaging. 
[info] Packaging /shared/breeze/viz/target/scala-2.11/breeze-viz_2.11-0.11-SNAPSHOT.jar ... 
[info] Done packaging. 
[success] Total time: 238 s, completed Jan 27, 2015 9:40:03 AM 

Tuttavia, il seguente errore viene ripetutamente quando si fa Build|Rebuild Progetto in IntelliJ IDEA 14:

Error:scalac: error while loading Object, Missing dependency 'object scala in compiler mirror', required by /Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre/lib/rt.jar(java/lang/Object.class) 

Ecco la stacktrace pieno:

Error:scalac: Error: scala.tools.nsc.typechecker.Namers$Namer.enterExistingSym(Lscala/reflect/internal/Symbols$Symbol;)Lscala/tools/nsc/typechecker/Contexts$Context; 
java.lang.NoSuchMethodError: scala.tools.nsc.typechecker.Namers$Namer.enterExistingSym(Lscala/reflect/internal/Symbols$Symbol;)Lscala/tools/nsc/typechecker/Contexts$Context; 
    at org.scalamacros.paradise.typechecker.Namers$Namer$class.enterSym(Namers.scala:41) 
    at org.scalamacros.paradise.typechecker.Namers$$anon$3.enterSym(Namers.scala:13) 
    at org.scalamacros.paradise.typechecker.AnalyzerPlugins$MacroPlugin$.pluginsEnterSym(AnalyzerPlugins.scala:35) 
    at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$13.custom(AnalyzerPlugins.scala:429) 
    at scala.tools.nsc.typechecker.AnalyzerPlugins$$anonfun$2.apply(AnalyzerPlugins.scala:371) 
    at scala.tools.nsc.typechecker.AnalyzerPlugins$$anonfun$2.apply(AnalyzerPlugins.scala:371) 
    at scala.collection.immutable.List.map(List.scala:273) 
    at scala.tools.nsc.typechecker.AnalyzerPlugins$class.invoke(AnalyzerPlugins.scala:371) 
    at scala.tools.nsc.typechecker.AnalyzerPlugins$class.pluginsEnterSym(AnalyzerPlugins.scala:423) 
    at scala.tools.nsc.Global$$anon$1.pluginsEnterSym(Global.scala:463) 
    at scala.tools.nsc.typechecker.Namers$Namer.enterSym(Namers.scala:274) 
    at scala.tools.nsc.typechecker.Namers$Namer$$anonfun$enterSyms$1.apply(Namers.scala:500) 
    at scala.tools.nsc.typechecker.Namers$Namer$$anonfun$enterSyms$1.apply(Namers.scala:499) 
    at scala.collection.LinearSeqOptimized$class.foldLeft(LinearSeqOptimized.scala:124) 
    at scala.collection.immutable.List.foldLeft(List.scala:84) 
    at scala.tools.nsc.typechecker.Namers$Namer.enterSyms(Namers.scala:499) 
    at scala.tools.nsc.typechecker.Namers$Namer.templateSig(Namers.scala:925) 
    at scala.tools.nsc.typechecker.Namers$Namer.moduleSig(Namers.scala:989) 
    at scala.tools.nsc.typechecker.Namers$Namer.getSig$1(Namers.scala:1526) 
    at scala.tools.nsc.typechecker.Namers$Namer.typeSig(Namers.scala:1541) 
    at scala.tools.nsc.typechecker.Namers$Namer$$anonfun$monoTypeCompleter$1$$anonfun$apply$1.apply$mcV$sp(Namers.scala:781) 
    at scala.tools.nsc.typechecker.Namers$Namer$$anonfun$monoTypeCompleter$1$$anonfun$apply$1.apply(Namers.scala:780) 
    at scala.tools.nsc.typechecker.Namers$Namer$$anonfun$monoTypeCompleter$1$$anonfun$apply$1.apply(Namers.scala:780) 
    at scala.tools.nsc.typechecker.Namers$Namer.scala$tools$nsc$typechecker$Namers$Namer$$logAndValidate(Namers.scala:1568) 
    at scala.tools.nsc.typechecker.Namers$Namer$$anonfun$monoTypeCompleter$1.apply(Namers.scala:780) 
    at scala.tools.nsc.typechecker.Namers$Namer$$anonfun$monoTypeCompleter$1.apply(Namers.scala:772) 
    at scala.tools.nsc.typechecker.Namers$$anon$1.completeImpl(Namers.scala:1684) 
    at scala.tools.nsc.typechecker.Namers$LockingTypeCompleter$class.complete(Namers.scala:1692) 
    at scala.tools.nsc.typechecker.Namers$$anon$1.complete(Namers.scala:1682) 
    at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1483) 
    at scala.reflect.internal.SymbolTable.openPackageModule(SymbolTable.scala:286) 
    at scala.tools.nsc.typechecker.Analyzer$packageObjects$$anon$2$$anon$4.traverse(Analyzer.scala:63) 
    at scala.tools.nsc.typechecker.Analyzer$packageObjects$$anon$2$$anon$4.traverse(Analyzer.scala:59) 
    at scala.reflect.api.Trees$Traverser$$anonfun$traverseStats$1$$anonfun$apply$1.apply$mcV$sp(Trees.scala:2498) 
    at scala.reflect.api.Trees$Traverser.atOwner(Trees.scala:2507) 
    at scala.reflect.api.Trees$Traverser.traverseStats(Trees.scala:2497) 
    at scala.reflect.internal.Trees$class.itraverse(Trees.scala:1326) 
    at scala.reflect.internal.SymbolTable.itraverse(SymbolTable.scala:16) 
    at scala.reflect.internal.SymbolTable.itraverse(SymbolTable.scala:16) 
    at scala.reflect.api.Trees$Traverser.traverse(Trees.scala:2475) 
    at scala.tools.nsc.typechecker.Analyzer$packageObjects$$anon$2$$anon$4.traverse(Analyzer.scala:66) 
    at scala.tools.nsc.typechecker.Analyzer$packageObjects$$anon$2$$anon$4.traverse(Analyzer.scala:59) 
    at scala.reflect.api.Trees$Traverser$$anonfun$traverseStats$1$$anonfun$apply$1.apply$mcV$sp(Trees.scala:2498) 
    at scala.reflect.api.Trees$Traverser.atOwner(Trees.scala:2507) 
    at scala.reflect.api.Trees$Traverser.traverseStats(Trees.scala:2497) 
    at scala.reflect.internal.Trees$class.itraverse(Trees.scala:1326) 
    at scala.reflect.internal.SymbolTable.itraverse(SymbolTable.scala:16) 
    at scala.reflect.internal.SymbolTable.itraverse(SymbolTable.scala:16) 
    at scala.reflect.api.Trees$Traverser.traverse(Trees.scala:2475) 
    at scala.tools.nsc.typechecker.Analyzer$packageObjects$$anon$2$$anon$4.traverse(Analyzer.scala:66) 
    at scala.tools.nsc.typechecker.Analyzer$packageObjects$$anon$2$$anon$4.traverse(Analyzer.scala:59) 
    at scala.reflect.api.Trees$Traverser.apply(Trees.scala:2513) 
    at scala.tools.nsc.typechecker.Analyzer$packageObjects$$anon$2.apply(Analyzer.scala:71) 
    at scala.tools.nsc.Global$GlobalPhase$$anonfun$applyPhase$1.apply$mcV$sp(Global.scala:441) 
    at scala.tools.nsc.Global$GlobalPhase.withCurrentUnit(Global.scala:432) 
    at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:441) 
    at scala.tools.nsc.Global$GlobalPhase$$anonfun$run$1.apply(Global.scala:399) 
    at scala.tools.nsc.Global$GlobalPhase$$anonfun$run$1.apply(Global.scala:399) 
    at scala.collection.Iterator$class.foreach(Iterator.scala:750) 
    at scala.collection.AbstractIterator.foreach(Iterator.scala:1202) 
    at scala.tools.nsc.Global$GlobalPhase.run(Global.scala:399) 
    at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1500) 
    at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1487) 
    at scala.tools.nsc.Global$Run.compileSources(Global.scala:1482) 
    at scala.tools.nsc.Global$Run.compile(Global.scala:1580) 
    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:29) 
    at org.jetbrains.jps.incremental.scala.local.LocalServer.compile(LocalServer.scala:26) 
    at org.jetbrains.jps.incremental.scala.remote.Main$.make(Main.scala:65) 
    at org.jetbrains.jps.incremental.scala.remote.Main$.nailMain(Main.scala:23) 
    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) 
+0

Vedere http://stackoverflow.com/questions/23317326/trying-to-cross-compile-a-project-to-scala-2-11-fails-with-error-while-loading –

+0

@NickJacobs Quell'altro la domanda non si applica per almeno due ragioni. (a) come menzionato nell'OP: la compilazione funziona sulla riga di comando (Build.scala non è rotto!) (b) hai effettivamente guardato su brezza build.sbt? Non sovrascrive il comune (e non l'ho toccato) – javadba

+0

Lo stesso succede a me in Eclipse. – Carsten

risposta

3

C'è una versione non corrispondente tra il compilatore Scala e la versione per macro-paradiso. Macro-paradise è un plugin per compilatore ed è strettamente accoppiato al compilatore Scala, quindi è cross-compilato su una versione completa di Scala. Controlla la versione di Scala che IntelliJ usa e controlla quale versione di Scala è compilata con macro-paradise.

Non sono sicuro del funzionamento di Intellij, ma in Eclipse è presente una pagina di configurazione "Scala Installation" (simile a JDK). È possibile impostare un'installazione di Scala che corrisponda alla versione di paradiso. Forse IntelliJ ha un concetto simile.

Problemi correlati