2017-09-25 4 views
0

Après avoir ajouté une dépendance dans mon carnet Jupyter en utilisant le noyau Apache Toree Scala, par exemple vegas:Ajout de dépendance à Apache Toree échoue à l'importation

%AddDeps org.vegas-viz vegas_2.11 0.3.11 --transitive 

Puis, quand je tente d'importer quelque chose de ce JAR, je reçois un longue piste de pile. Dans le bloc-notes, je fais:

import vegas._ 
import vegas.render.WindowRenderer._ 

La ligne de commande (où j'ai commencé Jupyter) montre une longue stacktrace:

17/09/25 12:41:16 ERROR OneForOneStrategy: object Predef does not have a member classOf 
scala.reflect.internal.FatalError: object Predef does not have a member classOf 
    at scala.reflect.internal.Definitions$DefinitionsClass.scala$reflect$internal$Definitions$DefinitionsClass$$fatalMissingSymbol(Definitions.scala:1186) 
    at scala.reflect.internal.Definitions$DefinitionsClass.getMember(Definitions.scala:1203) 
    at scala.reflect.internal.Definitions$DefinitionsClass.getMemberMethod(Definitions.scala:1238) 
    at scala.reflect.internal.Definitions$DefinitionsClass$RunDefinitions.Predef_classOf$lzycompute(Definitions.scala:1469) 
    at scala.reflect.internal.Definitions$DefinitionsClass$RunDefinitions.Predef_classOf(Definitions.scala:1469) 
    at scala.reflect.internal.Definitions$DefinitionsClass$RunDefinitions.isPredefClassOf(Definitions.scala:1459) 
    at scala.tools.nsc.typechecker.Typers$Typer.typedIdent$2(Typers.scala:4885) 
    at scala.tools.nsc.typechecker.Typers$Typer.typedIdentOrWildcard$1(Typers.scala:4908) 
    at scala.tools.nsc.typechecker.Typers$Typer.typedInAnyMode$1(Typers.scala:5340) 
    at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5360) 
    at scala.tools.nsc.typechecker.Typers$Typer.runTyper$1(Typers.scala:5396) 
    at scala.tools.nsc.typechecker.Typers$Typer.scala$tools$nsc$typechecker$Typers$Typer$$typedInternal(Typers.scala:5423) 
    at scala.tools.nsc.typechecker.Typers$Typer.body$2(Typers.scala:5370) 
    at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5374) 
    at scala.tools.nsc.interpreter.ReplGlobal$$anon$1$$anon$2.typed(ReplGlobal.scala:36) 
    at scala.tools.nsc.typechecker.Typers$Typer.typedQualifier(Typers.scala:5472) 
    at scala.tools.nsc.typechecker.Typers$Typer.typedQualifier(Typers.scala:5480) 
    at scala.tools.nsc.typechecker.Typers$Typer.typedPackageDef$1(Typers.scala:5012) 
    at scala.tools.nsc.typechecker.Typers$Typer.typedMemberDef$1(Typers.scala:5312) 
    at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5359) 
    at scala.tools.nsc.typechecker.Typers$Typer.runTyper$1(Typers.scala:5396) 
    at scala.tools.nsc.typechecker.Typers$Typer.scala$tools$nsc$typechecker$Typers$Typer$$typedInternal(Typers.scala:5423) 
    at scala.tools.nsc.typechecker.Typers$Typer.body$2(Typers.scala:5370) 
    at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5374) 
    at scala.tools.nsc.interpreter.ReplGlobal$$anon$1$$anon$2.typed(ReplGlobal.scala:36) 
    at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5448) 
    at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3.apply(Analyzer.scala:102) 
    at scala.tools.nsc.Global$GlobalPhase$$anonfun$applyPhase$1.apply$mcV$sp(Global.scala:440) 
    at scala.tools.nsc.Global$GlobalPhase.withCurrentUnit(Global.scala:431) 
    at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:440) 
    at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3$$anonfun$run$1.apply(Analyzer.scala:94) 
    at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3$$anonfun$run$1.apply(Analyzer.scala:93) 
    at scala.collection.Iterator$class.foreach(Iterator.scala:893) 
    at scala.collection.AbstractIterator.foreach(Iterator.scala:1336) 
    at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3.run(Analyzer.scala:93) 
    at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1501) 
    at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1486) 
    at scala.tools.nsc.Global$Run.compileSources(Global.scala:1481) 
    at scala.tools.nsc.interpreter.IMain.compileSourcesKeepingRun(IMain.scala:435) 
    at scala.tools.nsc.interpreter.IMain$ReadEvalPrint.compileAndSaveRun(IMain.scala:855) 
    at scala.tools.nsc.interpreter.IMain$ReadEvalPrint.compile(IMain.scala:813) 
    at scala.tools.nsc.interpreter.IMain$Request.compile$lzycompute(IMain.scala:1002) 
    at scala.tools.nsc.interpreter.IMain$Request.compile(IMain.scala:997) 
    at scala.tools.nsc.interpreter.IMain.compile(IMain.scala:579) 
    at scala.tools.nsc.interpreter.IMain.interpret(IMain.scala:567) 
    at scala.tools.nsc.interpreter.IMain.interpret(IMain.scala:565) 
    at org.apache.toree.kernel.interpreter.scala.ScalaInterpreterSpecific$$anonfun$interpretAddTask$1$$anonfun$apply$3.apply(ScalaInterpreterSpecific.scala:368) 
    at org.apache.toree.kernel.interpreter.scala.ScalaInterpreterSpecific$$anonfun$interpretAddTask$1$$anonfun$apply$3.apply(ScalaInterpreterSpecific.scala:363) 
    at scala.util.DynamicVariable.withValue(DynamicVariable.scala:58) 
    at scala.Console$.withErr(Console.scala:80) 
    at org.apache.toree.global.StreamState$$anonfun$1$$anonfun$apply$1.apply(StreamState.scala:73) 
    at scala.util.DynamicVariable.withValue(DynamicVariable.scala:58) 
    at scala.Console$.withOut(Console.scala:53) 
    at org.apache.toree.global.StreamState$$anonfun$1.apply(StreamState.scala:72) 
    at scala.util.DynamicVariable.withValue(DynamicVariable.scala:58) 
    at scala.Console$.withIn(Console.scala:124) 
    at org.apache.toree.global.StreamState$.withStreams(StreamState.scala:71) 
    at org.apache.toree.kernel.interpreter.scala.ScalaInterpreterSpecific$$anonfun$interpretAddTask$1.apply(ScalaInterpreterSpecific.scala:362) 
    at org.apache.toree.kernel.interpreter.scala.ScalaInterpreterSpecific$$anonfun$interpretAddTask$1.apply(ScalaInterpreterSpecific.scala:362) 
    at org.apache.toree.utils.TaskManager$$anonfun$add$2$$anon$1.run(TaskManager.scala:140) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:745) 

J'utilise Jupyter 4.3.0 sur Linux Mint 18.1 (sur la base Ubuntu 16.04) et Apache Version Toree:

VERSION: 0.2.0.dev1-incubating 
COMMIT: 9b577f19df83 

Je soupçonne l'erreur que je reçois peut être liée à une incompatibilité entre Apache Toree et la version scala je ... Ou quelque chose ... des suggestions sur la façon de procéder avec ça? Un grand merci à l'avance :-)

Répondre

0

Vous avez raison à cause d'un conflit de dépendance. Je faisais face au même problème. Il était dû à un conflit entre scala-reflect-2.11.6 et scala-reflect-2.11.8. J'ai dû installer manuellement vegas-viz et ses dépendances au repo maven local. Puis ajouté vegas-viz comme sparks.jars.pacakages dans le fichier de configuration au lieu de le charger dans la course. Ou vous pouvez exclure de la version.