getClassLoader() getResource()返回null

教育网编2023-04-08 12:281850

我会这样:

final InputStream stream;

stream = Test.class.getResourceAsstream("assets/pacman.png");
System.out.println("Stream = " + stream);

“ /assets/pacman.png”是绝对位置,而“ assets / pacman.png”是相对位置。

解决方法

我有这个测试应用程序:

import java.applet.*;
import java.awt.*;
import java.net.URL;
public class Test extends Applet
{

    public void init 
    {
        URL some=Test.class.getClass .getClassLoader .getResource("/assets/pacman.png");
        System.out.println(some.toString );
        System.out.println(some.getFile );
        System.out.println(some.getPath );

    }
}

当我从Eclipse运行它时,出现错误:

java.lang.NullPointerException
    at Test.init(Test.java:9)
    at sun.applet.AppletPanel.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

类路径(来自.CLASSPATH文件)

<classpathentry kind="src" path="src"/>

在我的c:\ project \ src文件夹中,我只有Test.java文件和包含pacman.png的’assets’目录。

我在做什么错以及如何解决?

评论区