java jar包中图片路径读取问题

Python016

java jar包中图片路径读取问题,第1张

你是用eclipse写的吧,在eclipse中 src包不是一个文件夹,而是代表你的class文件存放的地址,在你这里,src代表的就是Sys.jar!这个文件夹,!的没有特殊意思,就只是这个文件夹名字的组成而已,命名规则中不能用“*”,“.”,“/”命名,!是可以用的

你这样是不行的,如果打包成jar包,一定把图片放在和类的同一个包中,比如是A类需要图片,通过

ImageIcon icon = new ImageIcon(A.class.getResource(tupian.jpg))得到,这里的路径直接打文件名就可以了

一、通过使用外部资源文件的方式解决

把项目打包生成Jar后,再新建一文件夹,把项目中所有使用的图片文件和生成Jar文件放在该目录下,只要代码对图片文件的引用路径正确,如:ImageIcon image=new ImageIcon(SwingResourceManager.getImage("imagefilePath"))就可以了。

这种方式下,图片文件与类文件不是一块放在包中的,类文件在包中,而图片文件在项目根目录下。

二、通过使用内部资源文件的方式解决

把所用的图片文件放在项目使用的包中,打包时把图片文件同时打进Jar文件中。这种方式在具体代码中应使用下面其中一种:

1.ImageIcon image = new ImageIcon(this.getClass().getResource("imagefilePath"))

2.ImageIcon image = new ImageIcon(main.class.getResource("imagefilePath"))

3.ImageIcon = SwingResourceManager.getImage(main.class,"imagefilePath")

4.3.ImageIcon = SwingResourceManager.getImage(this.getClass(),"imagefilePath")

3和4中第一个参数代表图片文件路径的参照对象,不能少,否则不能正确获得图片资源。

最后,朋友们一定要注意大小写的问题,在项目中文件名的大小写没有影响,但是打包后,就必须注意文件名大小写问题了,否则也是不行的。