Olá, criei hoje o meu primeiro arquivo .jar para distribuir um programinha bem simples, no entanto o programa não está abrindo. Ao tentar descobrir porque o programa não funciona, me deparei com dois problemas:
1- Executar (clicar duas vezes) o arquivo jar em uma máquina diferente de onde eu fiz o programa não funciona. Como fazer pra descobrir o erro quando não se pode contar com o System.out.println()?
2 - Executar o arquivo jar na mesma máquina onde eu fiz o programa gera um processo “javaw.exe” que não fecha quando eu fecho o programa (eu tenho que encerrar ele manualmente). O que é esse “javaw.exe”?
Obrigado!
1 - Para você descobrir o erro basta você executar o JAR via console, a partir do seguinte comando:
java -jar programa.jar
Desta forma o erro irá aparecer na janela do console.
2 - Ao fechar a aplicação você executa o comando System.exit(0)?
Javaw é a mesma coisa que o Java, serve para executar a aplicação, porém sem abrir uma janela do console.
System.exit não é a melhor forma de sair de um programa.
Provavelmente o problema esta em usar um JFrame principal com a ação padrão para o fechamento (HIDE_ON_CLOSE). Tente alterar para DISPOSE_ON_CLOSE ou EXIT_ON_CLOSE.