无法从Java项目中访问终端中的.png文件
问题描述:
让我知道如果您需要比此更多的代码!无法从Java项目中访问终端中的.png文件
我可以在Eclipse中很好地运行程序。但是,一旦我访问这些文件并在终端中运行Java Frame,它只会显示我的游戏的一部分。它不显示任何.png文件。
这里是我的主要方法:
import javax.swing.*;
import java.awt.*;
public class Frame extends JFrame {
public static String title = "Tower Defense Alpha";
public static Dimension size = new Dimension(700, 550);
public Frame() {
setTitle(title);
setSize(size);
setResizable(false);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
init();
}
public void init(){
setLayout(new GridLayout(1,1,0,0));
Screen screen = new Screen(this);
add(screen);
setVisible(true);
}
public static void main(String args[]){
Frame frame = new Frame();
}
}
这里是我如何访问我在Eclipse中,文件,这似乎并没有在终端工作:
for (int i=0; i<tileset_ground.length; i++) {
tileset_ground[i] = new ImageIcon("res/tileset_ground.png").getImage();
tileset_ground[i] = createImage(new FilteredImageSource(tileset_ground[i].getSource(),
new CropImageFilter(0, 26*i, 26, 26)));
}
答
看来问题是在终端上,该程序正在从Client/src folder
运行,因此它试图寻找Client/src/res
上的图像,该图像不存在。
Eclipse在另一方面,保持单独的文件夹,并使用项目文件夹作为其根文件夹启动程序:
Client
|
+-- bin (classes compiled by Eclipse)
|
+-- res (images)
|
+-- src (source code)
通过运行javac *.java
而在src
文件夹正在创建的编译副本src
文件夹中的课程。
在您需要返回到客户端文件夹,并从那里与java -classpath bin Frame
命令你与运行的程序发布您的计划终端?哪个是您启动它的目录/文件夹? – 2013-03-18 01:39:18
我使用的命令是“javac * .java”,然后是“java Frame”,我的文件位于名为Client的文件夹中,并且在客户端内的文件夹中名为“src”,因此它位于“Client \ src”目录中 – Rashesh 2013-03-18 02:30:39
对不起我的意思是.png文件位于名为“Client \ res”的文件夹中,Frame.java文件位于“Client \ src”中 – Rashesh 2013-03-18 02:37:18