Usando Scala 2.12 con Spark 2.x
apache-spark abi (2)
En la docs Spark 2.1 se menciona que
Spark se ejecuta en Java 7+, Python 2.6 + / 3.4 + y R 3.1+. Para la API de Scala, Spark 2.1.0 usa Scala 2.11. Deberá usar una versión de Scala compatible (2.11.x).
En la noticia de lanzamiento de Scala 2.12 también se menciona que:
Aunque Scala 2.11 y 2.12 son en su mayoría compatibles con la fuente para facilitar la construcción cruzada, no son compatibles con binarios. Esto nos permite seguir mejorando el compilador Scala y la biblioteca estándar.
Pero cuando construyo un uber jar (usando Scala 2.12) y lo ejecuto en Spark 2.1. todo funciona bien.
y sé que no es una fuente oficial, pero en el blog de 47 grados mencionaron que Spark 2.1 es compatible con Scala 2.12.
¿Cómo puede uno explicar esos (conflictos) piezas de información?
Para agregar a la respuesta, creo que es un error tipográfico https://spark.apache.org/releases/spark-release-2-0-0.html no tiene mención de scala 2.12.
Además, si nos fijamos en los horarios, Scala 2.12 no se lanzó hasta noviembre de 2016 y Spark 2.0.0 se lanzó en julio de 2016.
Referencias: https://spark.apache.org/news/index.html
www.scala-lang.org/news/2.12.0/
Spark no soporta Scala 2.12. Puedes seguir SPARK-14220 ( Construir y probar Spark en Scala 2.12 ) para obtener el estado actualizado.