我正在制作游戏,我需要显示图像以使游戏可以玩。为了显示这些图像,我使用ImageIO.read
,并且在Eclipse中运行代码时所有图像都可以正常显示。我使用的图像作为我的主类放在一个单独的文件夹中,但我在构建路径中将此文件夹设置为源文件夹。
我尝试使用getClass().getClassLoader().getResource("image.jpg")
和main.class.getResource("image.jpg")
,我尝试编写/image.jpg
,对于Runnable Jar文件,我尝试提取库并打包库,所有这些东西在Eclipse中都可以正常工作,但在JAR文件中却不行。
我当前的代码如下:
File prisonCellFile = new File(main.class.getResource("cellule.jpg").getURI());
prisonCell = ImageIO.read(prisonCellFile);
除了图像以外,其他所有内容在jar文件中都可以正常工作,我看到图像已导出到jar文件中,但是它们没有显示出来...您知道我做错了吗?>
答案 0 :(得分:-1)
感谢安德鲁·汤普森(Andrew Thompson)的评论,我终于使它起作用了。我只是改变了:
File prisonCellFile = new File(main.class.getResource("cellule.jpg").getURI());
进入:
URL prisonCellFile = main.class.getResource("cellule.jpg");
答案 1 :(得分:-2)
您需要使用:
File prisonCellFile = new main.class.getResource("cellule.jpg").getFile());