2017-07-13 9 views
1

私は自分のローカルスパークインスタンスに送信しようとしているスパークジャーを持っています。 jarファイルは、すべての設定ファイルが/ resourcesフォルダにmaven構造体ごとに存在するようなパッケージです。FileNotFound送信をスパークしようとしたときに例外が発生しました

以下

は例外です:私はスパーク関連する部分(Javaのスパークを削除した場合TibcoMsgConsumer-1.0-SNAPSHOT.jar!/

:上記の例外で

java.io.FileNotFoundException: file:/Users/prime/Desktop/TibcoMsgConsumer-1.0-SNAPSHOT.jar!/config.properties (No such file or directory) 
    at java.io.FileInputStream.open0(Native Method) 
    at java.io.FileInputStream.open(FileInputStream.java:195) 
    at java.io.FileInputStream.<init>(FileInputStream.java:138) 

一つの観察可能なものは、jarファイルの末尾に!マーク存在し、コンテキスト)を通常のJava Jarにしても問題はありません。ここで何が間違っているのでしょうか?

私はクラスを逆コンパイルし、ここで私は、ファイルをロードする方法である:ここでは

ClassLoader classLoader = getClass().getClassLoader(); 
    File file = new File(this.classLoader.getResource("config.properties").getFile()); 
    private Properties properties = this.propLoader.initProp(this.file); 

は私がジョブを実行する方法である: /spark-submit --conf spark.shuffle.consolidateFiles=true --verbose --class "ril.bigdata.com.Main" --master local[*] ~/Desktop/TibcoMsgConsumer-1.0-SNAPSHOT.jar

私は何をしないのですか?

答えて

1

!の後ろに何が入っていますか? resourcesの中にconfig.propertiesがありません。JARのルートで検索しています。

File file = new File(this.classLoader.getResource("resources/config.properties").getFile()); 

これは動作するはずです。また

JavaDoc for getResource

+0

私はちょうどチェックするために値をハードコーディングすることになったが、すべては、しかし、アプリ内の他の問題があり結構です。 – User3

関連する問題