2016-04-10 9 views
1

MacでApache Sparkをビルドしようとしています。私はMacportsを使用しているので、Homebrewオプションは実行可能ではありません。だから私は、手動でのJavaの正しいバージョンをインストールし、Mavenと右のパスを作成しました:私はスパークをインストールしようとするとApache SparkのJava要件

Sankha-desktop:spark-1.6.1 user$ mvn -version 
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00) 
Maven home: /opt/local/share/java/maven33 
Java version: 1.7.0_79, vendor: Oracle Corporation 
Java home: 
    /Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home/jre 
Default locale: en_US, platform encoding: UTF-8 
OS name: "mac os x", version: "10.11.3", arch: "x86_64", family: "mac" 

は今、私は次のエラーを取得する:

Sankha-desktop:spark-1.6.1 user$ build/mvn -Pyarn -Phadoop-2.4 -Dhadoop.version=2.4.0 -DskipTests clean package 
Using `mvn` from path: /opt/local/share/java/maven33/bin/mvn 
[INFO] Scanning for projects... 
[INFO] ------------------------------------------------------------------------ 
[INFO] Reactor Build Order: 
[INFO] 

~~~~~~~ some more stuff ~~~~~~~ 

[info] Compiling 3 Java sources to /Users/user/Documents/installers/spark/spark-1.6.1/tags/target/scala-2.10/classes... 
[error] javac: invalid source release: 1.7 
[error] Usage: javac <options> <source files> 
[error] use -help for a list of possible options 
[error] Compile failed at Apr 11, 2016 6:14:07 AM [0.024s] 
[INFO] ------------------------------------------------------------------------ 
[INFO] Reactor Summary: 
[INFO] 
[INFO] Spark Project Parent POM ........................... SUCCESS [ 7.176 s] 
[INFO] Spark Project Test Tags ............................ FAILURE [ 1.027 s] 
[INFO] Spark Project Launcher ............................. SKIPPED 
[INFO] Spark Project Networking ........................... SKIPPED 

どうやら私のJavaのバージョンがあります違う?私は明示的にバージョン1.7をインストールし、それにリンクしました。最新のバージョン1.8もありますが、すでにJAVA_PATHから削除しました。

何が起こっているのですか?

+0

私はこれに似ていると思う:http://stackoverflow.com/questions/13645643/manag複数のバージョンのjdk-invalid-source-release-error –

+0

私はそれを確認しました。実際には、私のjavaとjavacの両方が1.7です。私が家に帰ると、後でMarkによって記述されているように、後で亜鉛コンパイラの設定を変更してみてください。 – ssm

答えて

1

私はこれが亜鉛コンパイラに関連していると思います。

pom.xmlファイルでZincコンパイラを無効にしてコンパイルすることができました。これを変更します。これに

<useZincServer>true</useZincServer> 

を:亜鉛コンパイラは私のJREディレクトリにjavacを探していたとして

<useZincServer>false</useZincServer> 

私のエラーメッセージが少し違っていました。私は亜鉛のために別のjava_homeを設定する方法を見つけようとしましたが、それを理解できませんでした(-java-home引数があり、それをpomに追加しようとしましたが、効果)。ここで

は亜鉛に関するスパークのドキュメントである:ここで

http://spark.apache.org/docs/latest/building-spark.html#speeding-up-compilation-with-zinc

は亜鉛GitHubのページです:

https://github.com/typesafehub/zinc

UPDATE:これはScalaの-maven-で問題になることがありプラグイン - https://github.com/davidB/scala-maven-plugin/issues/173

+0

ありがとうございます。魅力のように働いた。現在の実装で廃止予定の機能がいくつか使用されているようです。うまくいけば、すべてすぐにパッチが当てられます! – ssm