2016-11-12 6 views
0

Scala + Sparkでは、私はsprug-submitを使ってarugmentsでジョブを実行します。引数args.foreach(println)を出力しようとすると "PROD"をスキップし、 "/ tmp"と "A-1"のみを出力します。sparc-submitコマンドラインarugmentsが見つからない

アイデア?ありがとう

spark-submit \ 
--class "com.Main" \ 
--master yarn-client \ 
--num-executors 4 \ 
--driver-memory 16g \ 
--executor-cores 10 \ 
--executor-memory 6g \ 
--jars main.jar PROD /tmp A-1 2>&1 | tee ./log 

ありがとう。

+1

あなたのコードを質問に投稿できますか? – Shankar

答えて

0

--jarsフラグであなたはmain.jarをあなたのクラスタに転送したいと言っています(main.jarはあなたのスパークアプリケーションです)。

​​を使用して、が自動的 クラスタに転送される--jarsオプションに含ま 任意ジャーと共にアプリケーションジャー。 -jarsの後に指定するURLは、コンマで区切る必要があります。

スパークはおそらくアプリケーションとしてPRODと仮定し、この引数をスキップしました。あなたは引数を指定してまだ問題(スラッシュ、パイプラインのような奇妙な文字を...)持っている場合は、引用符を使用しようとすることができます

spark-submit \ 
--class "com.Main" \ 
--master yarn-client \ 
--num-executors 4 \ 
--driver-memory 16g \ 
--executor-cores 10 \ 
--executor-memory 6g \ 
main.jar PROD /tmp A-1 2>&1 | tee ./log 

を::

代わりにこれを試してみてくださいmain.jar PROD "/tmp" "A-1 2>&1 | tee ./log"を、そしてmainで、それは次のようになります。

args(0) -- PROD 
args(1) -- /tmp 
args(2) -- A-1 2>&1 | tee ./log 
+0

が削除されました。ありがとう – user1615666

関連する問題