1
次のコードは、Eclipse IDEで正常に動作します。ファイルを読み取っているときにnullポイントの例外が発生する
private void getLayersAndDisplay() throws Exception {
URL imageURL = ImageLab.class.getResource("earthlights.jpg");
File imageFile = new File(imageURL.toURI());
URL shapeFileURL = ImageLab.class.getResource("countries.shp");
File shapeFile = new File(shapeFileURL.toURI());
URL shapeFileURL2 = ImageLab.class.getResource("Brasil.shp");
File shapeFile2 = new File(shapeFileURL2.toURI());
displayLayers(imageFile, shapeFile,shapeFile2);
}
しかし、jarにコンパイルすると、nullポインタ例外が発生します。私はclass.getResourceとして取得しているので、それはうまくいくと思いました。 jarファイルでFileクラスを使用することはできませんか?キャストでさえない?
は(つまり、jarファイルが何であるかだ)
問題は、私はFile型が必要であり、動作するAPIのメソッドのStream型ではないということです。 –
可能であれば、そのAPIを修正するか、またはzipエントリを読み込んで一時ファイルに書き込んだ後、この一時ファイルを渡して、破損したAPIが再度読み取れるようにします。 –