Упаковка программы, содержащей изображения

У меня большие проблемы с упаковкой моей java-программы, которая содержит изображения в jar для конвертации в исполняемый файл. Изображения использовались в качестве фона программы и кнопок. Пожалуйста, см. Диаграмму ниже, которая показывает программу, которую я хочу преобразовать в банку.

ОБРАЗ

Как вы видите выше, программа работает нормально. Я создал ту же программу без пользовательского фона и пользовательских кнопок, не содержащих изображений, и успешно упаковал ее в jar, а затем в файл .exe.

Что касается рисования моего фона, я делаю это следующим образом:

public void paintComponent(Graphics g) {
    Image img = new ImageIcon("imgs/Bgnd1.jpg").getImage();
    Dimension size = new Dimension(img.getWidth(null), img.getHeight(null));
    setPreferredSize(size);
    setMinimumSize(size);
    setMaximumSize(size);
    setSize(size);
    setLayout(null);
    g.drawImage(img, 0, 0, null);
} 

Что касается создания моих 4 пользовательских кнопок с изображениями, я делаю следующее:

// Prepare rollover images
ImageIcon F1 = new ImageIcon("imgs/btn_f1_not_selected.jpg");
ImageIcon F1rollOver = new ImageIcon("imgs/btn_f1_selected.jpg");

// Create F1 button
final JButton btnF1 = new JButton(F1);
//btnF1.setOpaque(false);
btnF1.setContentAreaFilled(false);
btnF1.setBorder(null);
btnF1.setBorderPainted(false);
btnF1.setFocusPainted(false);
btnF1.setRolloverIcon(F1rollOver);

Я попытался поместить изображения в папку bin и для создания фона я изменил вышеуказанный метод в отношении объявления / извлечения изображения.

public void paintComponent(Graphics g) {
        String path = "Bgnd11.jpg";
        java.net.URL imgURL = getClass().getResource(path);     
        Image img = new ImageIcon(imgURL).getImage();
        Dimension size = new Dimension(img.getWidth(observer), img.getHeight(observer));
        setPreferredSize(size);
        setMinimumSize(size);
        setMaximumSize(size);
        setSize(size);
        setLayout(null);
        g.drawImage(img, 0, 0, null);
}

Я также попытался извлечь изображения, необходимые для создания моих кнопок, как указано ниже, и затем передать их моей кнопке, но это не сработало.

String path = "Bgnd11.jpg";
java.net.URL imgURL = getClass().getResource(path);     
Image img = new ImageIcon(imgURL).getImage();

Как найти и загрузить изображения?

Ответы на вопрос(1)

Ваш ответ на вопрос