一个基本的Java工程,用Eclipse建立,目录为:
src
src/com/../源文件
src/resource/lineup.txt
src/META-INF/manifest.mfbin
bin/com/../class文件
bin/resource/lineup.txt
bin/META-INF/manifest.mfsrc目录下是源文件和资源文件,资源文件在源文件里有调用.我在java程序里这样写对资源文件的调用:
[code]public static final String RESOURCE_DIR = ClassLoader.getSystemResource("").getFile();
public static final String SAMPLE_LINE_UP = RESOURCE_DIR + "resource/lineup.txt" ;[/code]
其中,RESOURCE_DIR是${ProjectHome}/bin/路径,这样写,我在eclipse下运行没有问题;
而后,我将bin目录打包成JAR,打包过程:进入${ProjectHome}/bin/,然后:
[code]jar cvfm ..\MilitaryChess.jar .\META-INF\MANIFEST.MF .\* ..\resource[/code]
打包后,jar文件目录结构为:
JAR-com/../class
-resource/lineup.txt
-META-INF/MANIFEST.MF运行Jar却总是报: ClassLoader.getSystemResource("") 这里是NullPointer异常,请问:
问题在哪,如何解决呢?谢谢我做的是一个Swing界面,这里有下载
http://metaphy.javaeye.com/blog/180498
src
src/com/../源文件
src/resource/lineup.txt
src/META-INF/manifest.mfbin
bin/com/../class文件
bin/resource/lineup.txt
bin/META-INF/manifest.mfsrc目录下是源文件和资源文件,资源文件在源文件里有调用.我在java程序里这样写对资源文件的调用:
[code]public static final String RESOURCE_DIR = ClassLoader.getSystemResource("").getFile();
public static final String SAMPLE_LINE_UP = RESOURCE_DIR + "resource/lineup.txt" ;[/code]
其中,RESOURCE_DIR是${ProjectHome}/bin/路径,这样写,我在eclipse下运行没有问题;
而后,我将bin目录打包成JAR,打包过程:进入${ProjectHome}/bin/,然后:
[code]jar cvfm ..\MilitaryChess.jar .\META-INF\MANIFEST.MF .\* ..\resource[/code]
打包后,jar文件目录结构为:
JAR-com/../class
-resource/lineup.txt
-META-INF/MANIFEST.MF运行Jar却总是报: ClassLoader.getSystemResource("") 这里是NullPointer异常,请问:
问题在哪,如何解决呢?谢谢我做的是一个Swing界面,这里有下载
http://metaphy.javaeye.com/blog/180498
解决方案 »
- 匹配超链接的正则表达式
- Java同C服务端SOCKET通信的问题
- java 有关人鬼过河的一个问题
- 子类对象引用问题
- 请教一个JDBC连接数据库中的URL设置的问题
- 此JAVA程序错在哪?
- 晕死啊!JBuilder中新建工程,使用已有的类文件,包要怎么处理啊?
- 我调用dll文件的代码啊!不知道那里错了!哪个 .dll文件就在我这个目录下啊
- 方案1:5个数据库连接池,每个连接池都有10个连接。方案2:1个数据库连接池,共有50个连接。请问这两种方案在效率上有差别吗?
- 请问用java如何复制一个文件或者文件夹
- 如何在jtable 绑定 JTextfield 实现动态同步更新
- java怎么样获取局域网内活动Ip和主机名
src
src/com/../源文件
src/resource/a.txt
src/META-INF/manifest.mfbin
bin/com/../class文件
bin/resource/a.txt
bin/META-INF/manifest.mfsrc目录下是源文件和资源文件,资源文件在源文件里有调用.我在java程序里这样写对资源文件的调用:
public static final String RESOURCE_DIR = ClassLoader.getSystemResource("").getFile();
public static final String SAMPLE_LINE_UP = RESOURCE_DIR + "resource/lineup.txt" ; 其中,RESOURCE_DIR是${ProjectHome}/bin/路径,这样写,我在eclipse下直接运行没有问题;
而后,我将bin目录打包成JAR,打包过程:进入${ProjectHome}/bin/,然后:
jar cvfm ..\MilitaryChess.jar .\META-INF\MANIFEST.MF .\*打包后,jar文件目录结构为:
JAR-com/../class
-resource/a.txt
-META-INF/MANIFEST.MF运行Jar却总是报: ClassLoader.getSystemResource("") 这里空指针问题,请问:
问题在哪,如何解决呢?谢谢
/META-INF(版本)
/MANIFEST.MF(清单)
/JAR-com(通用域名)
../class(入口类)
-resource/a.txt(说明书)
虽然Java是在C++的基础上开发出来的,
但是JAVA不支持指针,
C++和JAVA之间的最大不同是JAVA不再支持指针。