Percebi que muitos desenvolvedores precisam, ou já precisaram, distribuir suas aplicações Java de forma que os usuários de Windows pudessem iniciá-las naturalmente, sem a necessidade de chamar o comando java -jar <arquivo jar> ou executar um arquivo .BAT.
Eu, que também já passei por isso, encontrei um solução fácil e com muitos recursos: JSmooth.
Este programinha possibilita que você “transforme” seu JAR em um executável (EXE), mas claro, ainda sim você precisará ter o JVM instalado no micro que rodará o executável.
Aqui só destacarei as configurações que considero relevantes, então vamos ao que interessa!
Baixe o JSmooth em http://sourceforge.net/projects/jsmooth/files/;
Após instalá-lo (ou descompactá-lo, depende do arquivo que você baixou) execute-o;
No menu lateral, clique em “Skeleton“;
No “Skeleton Selection” você informa como a aplicação será executada, aqui selecionaremos Window Wrapper.
No “Skeleton Properties” você define uma mensagem caso o usuário não tenha o JVM instalador (Message) e onde ele poderá baixá-lo (URL).
“Launch java app in the exe process” indica se o JAR será executado no mesmo processo do EXE, aparecendo somente o executável no Gerenciador de Tarefas do Windows, caso contrário também será o processo javaw.exe.
“Single Instance” define se você ser aberto mais de uma instância.
“Debug Console” executa o EXE em uma janela do prompt de comando, exibindo os possíveis Stacktraces gerados pela aplicação.
Agora clique em “Executable”
Em “Executable Settings” você informa onde o EXE será gerado (“Executable Binary“), o ícone do EXE (“Executable Icon“) e qual será o diretório de execução da aplicação.
Clique em “Application”
Primeiro, clique no ícone
e selecione o JAR que contém a classe principal (que contém o método main).
Em seguida, selecione a classe no campo “Main Class” clicando no botão
.
O campo “Application arguments” você passa os parâmetros necessário para a sua classe.
“Embedded JAR” possibilita que você integre seu JAR no EXE, ou seja, não será necessário ter os dois arquivos, pois o EXE descompactará o JAR a cada execução.
Agora, clique em “JVM Selection“.
Aqui você pode definir qual versão, mínima (“Minimum JVM Version“) e máxima (“Maximum JVM Version“), da virtual machine rodará sua aplicação.
O”JVM Search Sequence” indica a ordem de busca do arquivo javaw.exe, neste caso ele procurará primeiro no registro, depois no diretório informado na variável de ambiente “JAVA_HOME” e assim por diante.
E então clique em “JVM Configuration”
Aqui você informa a quantidade máxima de memória que sua aplicação poderá usar (“Maximum Memory“), quanta memória será alocada para sua aplicação assim que ela iniciar (“Initial Memory Allocation“) e os argumentos que será passado à JVM para sua aplicação.
Até este ponto você somente configurou o JSmooth, mas ainda não temos o EXE. Para isso, clique no botão
, caso você ainda não tenha salvo o projeto será aberta uma janela para escolher o local de salvamento do arquivo. Feito isso, o EXE será gerado no diretório indicado no campo “Executable Binary” da tela “Executable“.
Agora é só dar um duplo clique no arquivo EXE e aplicação iniciará!
Para mais informações acessem http://jsmooth.sourceforge.net/
Espero que tenham gostado, comentem à vontade!
Até mais!




