2015-09-18 18 views
7

Ho installato Spark 1.5 su Ubuntu 14.04 LTS. Quando si esegue costruire con comando build/mvn -Dscala-2.11 -DskipTests clean package ottengo il seguente errore durante la costruzione del progetto Spark SQL:Errore di build Spark SQL 1.5

[error] missing or invalid dependency detected while loading class file 'WebUI.class'. 
     [error] Could not access term eclipse in package org, 
     [error] because it (or its dependencies) are missing. Check your build definition for 
     [error] missing or conflicting dependencies. (Re-run with `-Ylog-classpath` to see the problematic classpath.) 
     [error] A full rebuild may help if 'WebUI.class' was compiled against an incompatible version of org. 
     [error] missing or invalid dependency detected while loading class file 'WebUI.class'. 
     [error] Could not access term jetty in value org.eclipse, 
     [error] because it (or its dependencies) are missing. Check your build definition for 
     [error] missing or conflicting dependencies. (Re-run with `-Ylog-classpath` to see the problematic classpath.) 
     [error] A full rebuild may help if 'WebUI.class' was compiled against an incompatible version of org.eclipse. 
     [warn] 22 warnings found 
     [error] two errors found 
     [error] Compile failed at Sep 18, 2015 6:09:38 PM [17.330s] 
     [INFO] ------------------------------------------------------------------------ 
     [INFO] Reactor Summary: 
     [INFO] 
     [INFO] Spark Project Parent POM ........................... SUCCESS [ 6.723 s] 
     [INFO] Spark Project Core ................................. SUCCESS [03:07 min] 
    ... 
     [INFO] Spark Project Catalyst ............................. SUCCESS [ 58.166 s] 
     [INFO] Spark Project SQL .................................. FAILURE [ 19.912 s] 
     [INFO] Spark Project Hive ................................. SKIPPED 
     [INFO] Spark Project Unsafe ............................... SKIPPED 
... 
     [INFO] ------------------------------------------------------------------------ 
     [INFO] BUILD FAILURE 
     [INFO] ------------------------------------------------------------------------ 

Di seguito le mie variabili env nel file di .bashrc

export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-amd64 

export SCALA_HOME=/usr/local/src/scala/scala-2.11.7 
export PATH=$SCALA_HOME/bin:$PATH 
export PATH=/home/ubuntu/apache-maven-3.3.3/bin:$PATH 

export SPARK_HOME=/home/ubuntu/spark-1.5.0 
export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m" 

Aggiornamento: ha cercato di correre con -Ylog-classpath , ma non ha funzionato:

Unable to parse command line options: Unrecognized option: -Ylog-classpath 
+0

sto ottenendo lo stesso errore quando si cerca di build spark 1.5 on 2.11, C'è una nota sulla pagina Building Spark (http://spark.apache.org/docs/1.5.0/building-spark.html) "Spark non supporta ancora il suo componente JDBC per Scala 2.11 ". quello potrebbe essere correlato. –

+0

@Angelo: hai ragione, ho omesso l'opzione -Dscala-2.11 nel comando e la compilazione ha avuto successo. Grazie ! – guzu92

+1

Se non si utilizza il modulo SQL, è probabile che si possa semplicemente commentare dal pom di livello superiore e ricostruire. Non l'ho ancora provato, quindi, YMMV. –

risposta

1

Fare riferimento al commento di Angelo Genovese, non includono -Dscala-2.11 nel comando di generazione.

1

Se non specificamente necessità Spark-SQL, poi basta escludere i moduli relativi SQL da costruzione:

mvn clean package -Dscala-2.11 -DskipTests -pl '!sql/core,!sql/catalyst,!sql/hive'

5

basta eseguire ./dev/change-scala-version.sh 2.11 dalla directory scintilla per cambiare tutto il codice a 2.11. Quindi esegui mvn (3.3.3+) o make-distribution.sh con le tue bandiere impostate.

-1

Questo problema di build può essere risolto modificando prima la versione di scala da 2.10 a 2.11 eseguendo il comando 'change-scala-version.sh' situato in spark-1.6.1/dev/change-scala-version.sh 2.11

Fare riferimento al collegamento sottostante per informazioni dettagliate. http://gibbons.org.uk/spark-on-windows-feb-2016

0

Ero in esecuzione anche in questo problema, in un progetto che avevo importato in IntelliJ da un Maven pom.xml. Il mio collega mi ha aiutato a capire che anche se <scope>runtime</scope> va bene per la maggior parte delle dipendenze, questo particolare la dipendenza deve essere <scope>compile</scope> (per ragioni che non comprendiamo):

<dependency> 
    <groupId>org.scala-lang</groupId> 
    <artifactId>scala-reflect</artifactId> 
    <version>${scala.version}</version> 
    <scope>compile</scope> 
</dependency>