API Twitter à utiliser avec Scala 2.12
Je construis une application de streaming Spark (3.0.0) avec Scala 2.12 (construite avec SBT). Comment obtenir des tweets de l'API Twitter, étant donné que toutes les bibliothèques pour cela sont pour Scala <= 2.11.
EDIT: exemple de sortie que j'obtiens en essayant de construire avec les bibliothèques:
object twitter is not a member of package org.apache.spark.streaming
[error] import org.apache.spark.streaming.twitter.TwitterUtils
Réponses
Pour importer spark-streaming-twitterdans votre Scala 2.12, vous devez spécifier la version Scala dans votre importation:
resolvers += "twitter_2" at "https://mvnrepository.com/artifact/org.apache.spark/spark-streaming-twitter"
libraryDependencies += "org.apache.spark" % "spark-streaming-twitter_2.11" % "1.6.3"
Cet appel force à récupérer la version scala 2.11 de l'artefact. L'importation probablement essayée était:
libraryDependencies += "org.apache.spark" %% "spark-streaming-twitter" % "1.6.3"
Les sbtrecherches pour le spark-streaming-twitter_2.12cas où votre version de construction de scala est 2.12, qui existe dans maven atifactory .
Cela dit, vous devez comprendre la compatibilité binaire des versions de scala avant de faire une telle chose.
Après cette importation, vous pouvez appeler:
import org.apache.spark.streaming.twitter.TwitterUtils