我从Eclipse IDE导出了一个可运行的jar文件。在Eclipse中程序运行正常,但在导出时程序拒绝打开。为了澄清,图像位于源文件夹中,并通过URL通过资源加载器类加载。我使用JD-GUI显示我的jar文件的内容,并将图像正确打包到文件中(包括此图片)。为什么jar文件运行不正常? The problem
以下是我的URL Loader代码
public class MainPanel extends JPanel{
BufferedImage img1, img2;
URL url1 = ResourceLoader.class.getResource("1.jpg");
URL url2 = ResourceLoader.class.getResource("2.jpg");
MainPanel(){
try {
img1 = ImageIO.read(url1);
img2 = ImageIO.read(url2);
} catch (IOException e) {
e.printStackTrace();
}
}
public void paintComponent(Graphics g){
super.paintComponent(g);
g.drawImage(img1, 1, 0, null);
g.drawImage(img2, img1.getWidth(), 0, null);
if(g instanceof Graphics2D){
Graphics2D g2d = (Graphics2D)g;
}
}
}
这是资源加载器类
final public class ResourceLoader {
public static InputStream load(String path){
InputStream input = ResourceLoader.class.getResourceAsStream(path);
if (input == null) {
input = ResourceLoader.class.getResourceAsStream("/"+path);
}
return input;
}
}
编辑:: // 以下是正在发生的错误的命令提示读出 enter image description here
答案 0 :(得分:-1)
导出jar时,在"启动配置中选择包含main方法的类。它应该工作正常。如果你仍然遇到问题,那么使用" java -jar jarfilename"从命令行运行jar。命令以查看确切的错误消息。