|
泛起这种题目的原因大多是由于路径的题目,往往是在项目中运行正常,但是一旦打包成Jar后就不能正常显示了,下面总结一下解决此类题目的方法:
一、通过使用外部资源文件的方式解决
把项目打包天生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中第一个参数代表图片文件路径的参照对象,不能少,否则不能准确获得图片资源。
最后,朋友们一定要留意大小写的题目,在项目中文件名的大小写没有影响,但是打包后,就必需留意文件名大小写题目了,否则也是不行的。 |
|