2017-09-26 29 views
0

jarファイルの外にあるxmlファイルを読み込む必要があります。相対パスは使用しません。これはUNIXボックスの絶対パスです。私が理解する限り、私は2つの方法があると思います: - 1)jarのマニフェストファイルを変更し、クラスパスにその場所を追加してください。この場合、getResource()を使用できますか? 2)getResourceAsStream()でパスをハードコーディングします。私のパスは "/usr/local/folder1/folder2/"のようなものになるでしょう。私はgetResource()をクラスパスの外側に使用することはできないので、getResourceAsStream()を使う必要があります。xmlファイルをJavaのjarファイルの外に読み込む

これらの方法のほうが優れていますか?

+1

可能な重複[プロパティが外JARファイルをファイル読み込み](https://stackoverflow.com/questions/34108412/reading-file-right-outside-jar)上記のリンク –

+0

が応答しません私が持っている特定の質問。ありがとう! – user911

答えて

1

はい、getResourceAsStreamgetResourceの両方は、クラスまたはブートストラップクラスをロードするクラスローダに表示されるパスに依存します。絶対パスを使用する場合は、FileInputStreamを使用してください。

InputStream inputStream = new FileInputStream("/usr/local/folder1/folder2/myxml.xml");

関連する問題