【新手提问】eclipse中添加图片URL,提示空指针怎么解决?

![图片说明图片说明](https://img-ask.csdn.net/upload/201507/21/1437408372_522094.png)图片说明

如上3图所示,图片放在工程目录下,

    URL url = SwingAndThread.class.getResource("1.gif"); // 获取图片的URL
        Icon icon = new ImageIcon(url); // 实例化一个Icon
        jl.setIcon(icon); // 将图标放置在标签中

这么写的话就会报以下错误:

 Exception in thread "main" java.lang.NullPointerException
    at javax.swing.ImageIcon.<init>(ImageIcon.java:217)
    at HelloJAVA.SwingAndThread.<init>(SwingAndThread.java:21)
    at HelloJAVA.SwingAndThread.main(SwingAndThread.java:53)

但是这么写能够正常运行:

 //     URL url = SwingAndThread.class.getResource("1.gif"); // 获取图片的URL
        Icon icon = new ImageIcon("1.gif"); // 实例化一个Icon
        jl.setIcon(icon); // 将图标放置在标签中

为啥啊?第一种情况我把图片放在工程目录下、src目录下、和java文件同目录都会报错。求前辈们解答一下,拜谢!

仔细看一下这篇文章,各种目录位置都在里面了
http://blog.csdn.net/lcj8/article/details/3502849

http://blog.csdn.net/rikgong/article/details/5895306

说明路径位置取的不对,取不到

resource是从你编译后的文件夹中寻找,如果你的是在根目录下,直接在bin下找,找不到外边的;要不你把图片放到bin目录下,要不你就用相对路径,即不使用resource的方式,直接写路径即可,那样的话是从整个工程根目录找。

用项目路径不就好了。