API do Twitter para usar com Scala 2.12
Estou construindo um aplicativo de streaming Spark (3.0.0) com Scala 2.12 (desenvolvido com SBT). Como obtenho tweets da API do Twitter, considerando que todas as bibliotecas para fazer isso são para Scala <= 2.11.
EDIT: amostra de saída que obtenho ao tentar construir com as libs:
object twitter is not a member of package org.apache.spark.streaming
[error] import org.apache.spark.streaming.twitter.TwitterUtils
Respostas
Para importar spark-streaming-twitterpara o Scala 2.12, você precisa especificar a versão do Scala na importação:
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"
Esta chamada força a busca da versão do scala 2.11 do artifactory. A importação provavelmente tentada foi:
libraryDependencies += "org.apache.spark" %% "spark-streaming-twitter" % "1.6.3"
A sbtpesquisa se a spark-streaming-twitter_2.12versão do seu scala build é 2.12, que existe no maven atifactory .
Dito isso, você precisa entender a compatibilidade binária dos lançamentos do scala antes de fazer isso.
Após esta importação, você pode chamar:
import org.apache.spark.streaming.twitter.TwitterUtils