我一直在努力解决这个问题。我找到了this和this,但这些解决方案根本不适用于我。
我的jar在命令提示符下使用java -jar非常完美,但是当双击时,会打开一个JFrame窗口,但它会失败:
Scanner fileLat = new Scanner( a.getClass().getResourceAsStream("/motor/resources/lat.txt") );
Scanner fileLong = new Scanner( a.getClass().getResourceAsStream("/motor/resources/long.txt") );
无法找到空指针异常和资源的结果。
我的目录结构(在jar中)如下所示:
/ (root)
|- META-INF
|- motor
|- main
|- Main.class
|- resources
|- lat.txt
|- long.txt
我的MANIFEST.MF内容如下:
Manifest-Version: 1.0
Class-Path: .
Main-Class: motor.main.Main
编辑: 我刚尝试this(特别是jar:文件:MyJar.jar!/ etc ......)并且它也没有用。
答案 0 :(得分:0)
您是否尝试从清单中删除Class-Path
?
在我这里的示例中定义类路径并不常见:许多应用程序(包括jEdit和jExt安装程序)将在没有它的情况下运行。
你也可以尝试添加一个空的。