我正在用Java AWT编写简单的游戏。我可以编译它并通过IntelliJ正常运行。当我尝试通过cmd进行编译时遇到问题。
在我的项目中,我在src/player.png
中有一张图片。
在src/GUI/MyCanvas.java
中加载player = ImageIO.read(new File("player.png"));
。
当我在javac Main.java -cp .
中执行src/
时,它可以毫无问题地进行编译,但是当我java Main
时,它无法加载图像。
我应该如何通过cmd进行编译?
答案 0 :(得分:1)
在jar中处理文件时,某些ide的编译方式不同。您应该在player.png后面添加/。像这样:
player = ImageIO.read(new File("/player.png"));
如果文件在jar中,您可以尝试:
player = ImageIO.read(getClass().getResourceAsStream("../player.png"));