当前位置: 首页 > 面试题库 >

getClassLoader()。getResource()返回null

满耀
2023-03-14
问题内容

我有这个测试应用程序:

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’目录。

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


问题答案:

我会这样:

final InputStream stream;

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

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



 类似资料:
  • 问题内容: 我在Eclipse Helios中创建了一个带有单个子模块的最小Maven项目。 在文件夹中,我放置了一个文件 java中,我创建了一个包含单个类的包,该类执行以下操作: 但是当我将代码作为junit 4单元测试运行时,我只是得到了NullPointerException。以前,这已经工作了一百万次了。有任何想法吗? 我遵循了此指南: 但仍然出现相同的错误。 问题答案: 使用时 get

  • 当我尝试从eclipse中的资源目录加载一个图像时,我总是得到一个空指针异常(null pointer exception,NPE)。res文件夹位于项目目录中。这是我得到NPE的地方: 当我移除getClass().getReource()时,将返回图像: 当我打印res目录的URL时,我得到null: 谢谢

  • 问题内容: 说我有一些Java代码: 还有一些代码可以加载: 能永远?为什么/为什么不呢?如果是这样,在什么情况下? 问题答案: 根据此方法javadoc: 返回该类的类加载器。一些实现可能使用null来表示引导类加载器。如果此类是由bootstrap类加载器加载的,则此方法在此类实现中将返回null。

  • 我正在使用以下内容来获取此特定文件的URL,但它返回null。有人对该问题或执行此操作的替代方法有任何建议吗?

  • 问题内容: 线 失败于 我正在使用Eclipse,并且在bin文件夹下的导航视图中有文件gate_and.png,表明该文件位于构建路径中。 在包浏览器视图中,我有 和 我右键单击项目文件夹>构建路径>链接源以将images文件夹添加为源,再次执行此操作会提供一条确认消息,指出源中已存在图像。 我还尝试过将gate_and.png更改为images / gate_and.png和/images/g

  • 这让我快疯了。我有一个简单的eclipse项目,其中有一个src文件夹和一个类。但我似乎无法让getResource找到它。我做错了什么? 如果我右键单击类名,路径是testsprroject/src/ContextTest。java,根据运行配置中的classpath选项卡,默认的类路径是TestProject。 它不适用于