所以我有一个在Eclipse中完美运行的项目,但是当我将它作为可运行的.jar导出时,我的.png资源文件的路径将不再起作用,因为src文件夹不包含在导出的.jar中。
createTexture("resources/grass.png", 0);
这是我使用路径的地方。
public static void createTexture(String path, int index){
try (InputStream inputStream = Drawer.class.getClassLoader().getResourceAsStream(path)){
textureDecoder = new PNGDecoder(inputStream); [...]
现在我收到了错误
Exception in thread "main" java.lang.NullPointerException
at de.matthiasmann.twl.utils.PNGDecoder.readFully(PNGDecoder.java:802)
at de.matthiasmann.twl.utils.PNGDecoder.<init>(PNGDecoder.java:112)
at workers.Drawer.createTexture(Drawer.java:80)
at workers.Drawer.openglSetup(Drawer.java:44)
at jonta.Main.setUp(Main.java:41)
at jonta.Main.main(Main.java:121)
OLD: 这显然是我尝试运行.jar时出现的错误:
java.io.FileNotFoundException: src\resources\grass.png
我当然会包含更多代码/配置,如果相关的话。
编辑:问题解决了,谢谢!答案 0 :(得分:0)
使用:
InputStream inputStream = className.class.getClassLoader().getResourceAsStream(path);
答案 1 :(得分:0)
在Eclipse中,选择&#34;导出...&#34;和&#34; JAR文件&#34;,有&#34;导出Java源文件和资源&#34;的复选框。您需要单击该复选框。