title: java how to add image using getResource()?
body: <p>I want to add an image to a Jpanel Class, I use the method <code>getResource()</code> but it returns <code>Exception in thread "main" java.lang.IllegalArgumentException: input == null!</code>, because the path into the image folder that i give is not valid, now I want how to get the valid path, I'm aware that maybe it's really easy and it's not a question that I've to ask here but I'm spending a lot of time and trying different path but it doesn't work;</p>
  
  <p>here the Jpanel class</p>
  
  <pre><code>import javax.imageio.ImageIO;
  import javax.swing.*;
  import java.awt.*;
  import java.awt.image.BufferedImage;
  import java.io.IOException;
  
  
  public class Application extends JPanel  {
  
      private BufferedImage image;
  
      public Application() {
            try {
                  image = ImageIO.read(getClass().getResource("/ressources/image.png"));
            } catch (IOException ex) {
                  System.out.println("problem! image can't be loaded!");
            }
      }
  
      @Override
      protected void paintComponent(Graphics g)
      {
          super.paintComponent(g);
          g.drawImage(image, 0, 0, null);
      }
  }
  </code></pre>
  
  <p>and here the main class </p>
  
  <pre><code>import javax.swing.*;
  //import java.awt.*;
  
  public class mainClass {
  
          public mainClass () {
  
              JFrame app = new JFrame();
              app=.setTitle("main window");
              app=.setSize(400, 400);
              app=.setLocationRelativeTo(null);
              app=.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
              app=.add(new Application()); 
              app=.setVisible(true);
          }
  
          public static void main(String[] args) {
              mainClass class = new mainClass();
          }
      }
  </code></pre>
  
  <p>the error is clearly in the line
   <code>image = ImageIO.read(getClass().getResource("/ressources/image.png"));</code></p>
  
  <p>cause the path is not valid, 
  I use a maven project, so the path of this classes is : 
  <strong>projectName\src\main\java\application\mainClass.java
  projectName\src\main\java\application\Application.java</strong></p>
  
  <p>I created a folder "ressources" and i put the image there, here the path
  <strong>projectName\ressources\image.png</strong></p>
  
  <p>thank you.</p>