如何在 Eclipse 中向我的 Java 项目添加资源文件夹 [英] How do I add a resources folder to my Java project in Eclipse

查看:69
本文介绍了如何在 Eclipse 中向我的 Java 项目添加资源文件夹的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想要一个地方来存储我的图像文件以在我的 Java 项目中使用(一个非常简单的类,它只是将图像加载到面板上).我到处找,找不到如何做到这一点.我该怎么做?

I want to have a place to store my image files to use in my Java project (a really simple class that just loads an image onto a panel). I have looked everywhere and cannot find how to do this. How do I do this?

我已经尝试向项目添加一个新文件夹,向项目添加一个新的类文件夹,以及向项目添加一个新的源文件夹.不管我做什么,我总是得到一个IOException.文件夹总是说它们在构建路径上,所以我不知道该怎么做.

I have tried adding a new folder to the project, adding a new class folder to the project, and adding a new source folder to the project. No matter what I do, I always get a IOException. The folders always say they are on the build path, so I'm not sure what to do.

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class PracticeFrame extends JFrame{

private static BufferedImage image;
Thread thread;

public PracticeFrame() {
    super();
    setPreferredSize(new Dimension(640,480));
    setResizable(false);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    pack();
    setVisible(true);
}

public static void main (String[] args) {
    PracticeFrame pframe = new PracticeFrame();
    try {
        image = ImageIO.read(new File("/islands.png"));
    } catch (IOException e) {
        e.printStackTrace();
    }

    JPanel panel = new JPanel() {
        @Override
        protected void  paintComponent(Graphics g) {
            super.paintComponent(g);
            g.drawImage(image,0,0,null);
        }
    };

    panel.setBackground(Color.BLUE);
    panel.repaint();
    pframe.add(panel);


}


}

对我有用的东西,我不知道为什么,将 main/res/ 文件夹添加为类文件夹,然后将其删除.我在 /main/res/ 作为类文件夹的构建路径的一部分时运行它,但它仍然没有工作.当我添加它时,我得到了一个弹出窗口,告诉我一些关于排除过滤器的信息.但是当我从构建路径中的库中删除文件夹,并将我的文件路径更改为:

Something that worked for me, and I have no idea why, was adding the main/res/ folder as a class folder and then removing it. I ran it while the /main/res/ was part of the build path as a class folder and it still didn't work. When i added it, i got a popup that told me something about excluded filters. But when i removed the folder from the libraries in the build path, and changed my file path to:

image = ImageIO.read(new File("src/main/res/islands.png"));

我至少不再抛出 IOException 了.我一定没有正确地将图像添加到面板,因为它没有显示出来,但至少它找到了文件(我认为).

I at least stopped getting the IOException thrown. I must not be adding the image to the panel correctly, because it's not showing up, but at least it found the file (I think).

推荐答案

在添加资源文件夹"时,构建路径 -> 配置构建路径 -> 源(选项卡) -> 添加文件夹 -> 创建新文件夹

When at the "Add resource folder", Build Path -> Configure Build Path -> Source (Tab) -> Add Folder -> Create new Folder

在新文件夹中添加my-resource.txt"文件.然后在您的代码中:

add "my-resource.txt" file inside the new folder. Then in your code:

    InputStream res =
    Main.class.getResourceAsStream("/my-resource.txt");

    BufferedReader reader =
        new BufferedReader(new InputStreamReader(res));
    String line = null;
    while ((line = reader.readLine()) != null) {
        System.out.println(line);
    }
    reader.close();

这篇关于如何在 Eclipse 中向我的 Java 项目添加资源文件夹的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆