JAR からリソースをロードすると getResourceAsStream が Null を返す
Class::getResourceAsStream を使用して JAR パッケージからテキスト ファイルをロードしようとすると、 null 戻り値が発生する可能性があります。この問題を解決するには、次の点を考慮してください。
Lifepaths.class.getClass().getResourceAsStream(...) メソッドは、JAR 内のリソースにアクセスできない可能性があるシステム クラス ローダーを使用します。代わりに、Lifepaths.class.getResourceAsStream(...) を使用して、Lifepaths クラスをロードしたクラス ローダーを利用し、JAR リソースへのアクセスを確保します。
getResourceAsStream(name) を呼び出すときは、名前がスラッシュ「/」。潜在的な問題を回避するには、通常、この方法をお勧めします。
修正されたコードの例を次に示します:
public static void execute() { System.out.println(Lifepaths.class.getResourceAsStream("/initialization/Lifepaths.txt")); }
以上がJAR からリソースをロードするときに getResourceAsStream が Null を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。