简单说就是,jar包中的代码读取不到jar包内被压缩的资源,因为File("img\img1.jpg"),寻找的是jar包所在目录下的"img\img1.jpg"路径
手动解决方案:将资源文件放在jar包所在目录
即若有一个p.jar在Demo文件夹中,代码运行需要的图片路径是File("img\img1.jpg"),那么就把包含图片资源的img文件夹放入Demo文件夹中,这样图片就能通过java -jar p.jar正常显示
代码解决方案:请查看http://www.iteye.com/topic/483115