Pq executar um jar de um programa que tem GUI funciona dando dois cliques no arquivo e quando não tem GUI só se consegue executar por linha de comando com java -jar ?
Lembrando que a classe que contém o método main deve ser declarada na Manifest.mf na linha Main-Class
Eu sei q essa dúvida eh bem bestinha… isso q me deixa mais frustrado…
Mas olha soh… pra criar o jar no eclipse eu clico com o botão direito no projeto, vou em export… ai JAR File (já testei com Runnable JAR File também), deixo tudo marcado default pelo eclipse, coloco pra salvar no desktop e na ultima janela coloco a classe main no manifest
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
Isso gerado, eu vou la no desktop dou 2 cliques e nada… ja dei thread.sleep(2000) e também nada… mas com java -jar pelo terminal funciona… só pra informação eu estou usando windows xp e eclipse galileo
Na verdade o fato de um programa ter GUI ou não, não faz a menor diferença. Para um programa java poder ser executado, ele deve ter uma classe MAIN principal que tenha um método
public static void main(String[] args)
só isso. Agora o fato de vc executa-lo com um duplo clique, o sistema de quem vai executar o aplicativo deve ter o JAVA configurado para abrir arquivos .jar, por via das duvidas, eu sempre constumo criar um batzinho pra garantir, ai é só dar um dupro clique no .bat, ou .sh se linux.
Espero ter ajudado.
[]'s