menega.
Funciona normal quando vc executa pelo prompt ( java nome_do_arquivo_class) ?
Se funcionar continua lendo o resto do post.
Em primeiro lugar porque vc quer criar o JAR?
Só pra poder executar o programa com um click duplo do mouse?
Se for só por esse motivo existe uma saída muito mais interessante.
No meu ponto de vista criar o .jar não há vantagem alguma pelo contrário só desvantagens, desvantagem de ter que instalar todo o jsdk na máquina do usuário quando seria necesário somene o runtime.
Existe uma saida para poder executar o seu aplicativo apenas com um duplo click do mouse e sem a necesidade de instalar toda a jsdk na máquina, apenas a JVM (runtime).
Para isso (no caso do windows) basta vc criar um arquivo de lote no mesmo diretório onde está o seu .class. Os arquivos de lotes são aqueles com a extensão .BAT
Para fazer isso abra o prompt de comando vá até a pasta onde está seu .class e digite “Edit um_nome_qualquer.bat” (sem as aspas), isso irá abrir o editor de textos do DOS.
Lá dentro vc digita “java nome_do_arquivo_class” (sem as aspas), salve esse arquivo e pronto. Agora é so criar um atalho onde quizer para o .BAT que vc criou e pronto, seu aplicativo executando com click de mouse e sem ter quer instalar todo o jsdk na máquina do usuário e vc ainda pode mudar o icone do atalho e por qualquer outro que vc queira.
Essa solução também pode ser feita no linux mas lá não se trata mais de .BAT e sim de um script. Se o seu caso for linux pesquise a respeito é super simples.
A tela do prompt fica por tras do aplicativo?
Tem uns macetes para esconde-la, se te interessar posta aqui que eu te explico.
Falow