J'ai créé un paquet jar à partir d'un projet avec cette arborescence de fichiers:
build.sbt
src/main
src/main/scala
src/main/scala/Tester.scala
src/main/scala/main.scala
où Tester est une classe par une fonction (nom est print ()) et main a un objet à exécuter qui affiche "Hi!" (from spark documentation) a créé avec succès un fichier jar par sbt et a bien fonctionné dans spark-submit
maintenant je veux l'ajouter à spark-shell et utiliser la classe testeur comme classe pour créer des objets et ... j'ai ajouté le fichier jar dans spark-default.conf mais:
scala> val t = new Tester();
<console>:23: error: not found: type Tester
val t = new Tester();
vous pouvez essayer en fournissant des pots avec argument comme ci-dessous
./spark-Shell --jars pathOfjarsWithCommaSeprated
Ou vous pouvez ajouter la configuration suivante dans spark-defaults.conf mais n'oubliez pas de supprimer le modèle de la fin de spark-defaults
spark.driver.extraClassPath pathOfJarsWithCommaSeprated
Si vous souhaitez ajouter un fichier .jar au chemin de classe après avoir entré spark-Shell, utilisez :require
. Comme:
scala> :require /path/to/file.jar
Added '/path/to/file.jar' to classpath.