首先,如果是图片跟文件在一个目录下,通过
ImageIcon image=new ImageIcon(this.getClass().getResource("a.jpg");能正常显示。然后,如果在Java项目文件夹下,Java文件所在目录为com.iframe.Frame1.java,图片所在目录为image/a.jpg,通过
ImageIcon image=new ImageIcon(this.getClass().getResource("/image/a.jpg");也能正常显示。但是,如果包含src文件夹,即Java文件所在目录为com.iframe.Frame1.java,com目录在src文件夹下,图片所在目录依旧为image/a.jpg,通过
ImageIcon image=new ImageIcon(this.getClass().getResource("/image/a.jpg");就不能正常显示了,提示ava.lang.NullPointerException,也就是找不到文件,请问是为什么,“/”不是从项目根目录下查找文件吗?

解决方案 »

  1.   

    没看懂你说啥。图片和class文件必须在一起,因为他们要打包成jar或者war使用的如果你是散放的,那使用相对路径好了。
      

  2.   

    经过测试,只要把图片也放在src文件夹下,就能通过
    this.getClass().getResource("/image/a.jpg")成功定位图片了。但有个问题没有理解透,在eclipse创建java项目的时候,一般都有个src文件夹,这个src文件夹的作用是什么?
      

  3.   

    项目的根文件夹是不是就是src文件夹
      

  4.   

    src 顾名思义就是放源代码的地方呀  = =本身根目录就不是src/的说 = =而是和src同级的目录比如你项目叫A,
    那么 A/   就是根目录