Não aparece a minha tela swing ao ser executado o código pelo netbeans

Ao adicionar uma imagem a minha tela e executa-lá, a tela swing não aparece, porém ao retirar a imagem, aí ela aparece normalmente. Comecei a aprender Java agora e não consegui encontrar algum vídeo que pudesse me ajudar.

Posta o código fonte e posta o StackTrace da exceção.

package classes;

public class TelaGenio extends javax.swing.JFrame {

public TelaGenio() {
    initComponents();
}


@SuppressWarnings("unchecked")
                        
private void initComponents() {

    jLabel1 = new javax.swing.JLabel();
    txtNumero = new javax.swing.JSpinner();
    btnPalpite = new javax.swing.JButton();
    lblFrase = new javax.swing.JLabel();
    jLabel2 = new javax.swing.JLabel();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setPreferredSize(new java.awt.Dimension(500, 500));
    getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

    jLabel1.setText("Valor");
    getContentPane().add(jLabel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(40, 300, -1, -1));

    txtNumero.setModel(new javax.swing.SpinnerNumberModel(1, 1, 5, 1));
    getContentPane().add(txtNumero, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 300, -1, -1));

    btnPalpite.setFont(new java.awt.Font("Segoe UI", 0, 14)); // NOI18N
    btnPalpite.setText("Palpite");
    btnPalpite.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnPalpiteActionPerformed(evt);
        }
    });
    getContentPane().add(btnPalpite, new org.netbeans.lib.awtextra.AbsoluteConstraints(40, 330, -1, -1));

    lblFrase.setFont(new java.awt.Font("Segoe UI", 0, 18)); // NOI18N
    lblFrase.setText("Pense em um número de 1 a 5");
    getContentPane().add(lblFrase, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 50, -1, -1));

    jLabel2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/classes/imagens/genio.png"))); // NOI18N
    getContentPane().add(jLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(170, 50, 290, -1));

    pack();
}// </editor-fold>                        

private void btnPalpiteActionPerformed(java.awt.event.ActionEvent evt) {                                           
    int num = Integer.parseInt(txtNumero.getValue().toString());
    double numSorteio = (1 + Math.random() * (6-1));
    int n = (int) numSorteio;
    boolean teste = num == n ? true : false;
    String testeFinal = teste == true ? "Acertou!" : "Que pena, eu pensei em " + n;
    lblFrase.setText(testeFinal);
}                                          

/**
 * @param args the command line arguments
 */
public static void main(String args[]) {
    /* Set the Nimbus look and feel */
    //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
    /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
     * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
     */
    try {
        for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
            if ("Nimbus".equals(info.getName())) {
                javax.swing.UIManager.setLookAndFeel(info.getClassName());
                break;
            }
        }
    } catch (ClassNotFoundException ex) {
        java.util.logging.Logger.getLogger(TelaGenio.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (InstantiationException ex) {
        java.util.logging.Logger.getLogger(TelaGenio.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (IllegalAccessException ex) {
        java.util.logging.Logger.getLogger(TelaGenio.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (javax.swing.UnsupportedLookAndFeelException ex) {
        java.util.logging.Logger.getLogger(TelaGenio.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    }
    //</editor-fold>

    /* Create and display the form */
    java.awt.EventQueue.invokeLater(new Runnable() {
        public void run() {
            new TelaGenio().setVisible(true);
        }
    });
}

// Variables declaration - do not modify                     
private javax.swing.JButton btnPalpite;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel lblFrase;
private javax.swing.JSpinner txtNumero;

}

getResource só funciona para arquivos no sistema de diretórios, sua aplicação deve estar rodando a partir de um .jar então não vai conseguir carregar nenhum arquivo empacotado no .jar.

Vai ter que mudar sua implementação para usar getResourceAsStream.

Poderia me explicar como faço para alterar? Essa parte do código o Netbeans não me permite mexer. Não sei se é diretamente no código que preciso mudar, estou começando agora, poderia me ajudar com isso?

Então usa uma ferramenta que te deixe programar.

Estou aprendendo por essa, consegue me ajudar por ela? Senão, consegue me recomendar um curso que aprenda por outro software?