Como criar um "executavel" do java?

Por exemplo, como criar um arquivo que eu pudesse enviar para um pessoa e que ela pudesse abrir, tendo o JVM instaldo em sua maquina, sem precisar fazer coisas do tipo c:\ java arquivo ? Um arquivo parecido ocm o .jpln (acho que é assim), que nos documentos do Sun, você clica em Launch e aparece um arquivo =D

Alguem poderia me dizer se tem como fazer isso e como se faz? :slight_smile:

Obrigado :stuck_out_tongue:

Crie um .jar: http://www.guj.com.br/article.show.logic?id=42

[youtube]http://www.youtube.com/watch?v=2FPu5YxUhXk[/youtube]

Vc precisará de um JAR executável. Mas ele não é como se fosse um executável em windows pois ele funcionará para qualquer linguagem.

Só tome cuidado com os paths que vc utilizar. [=

Oi,

Pode-se criar um arquivo .BAT e chamar seu jar a partir dele.

Tchauzin!

Então por exemplo, se eu criase o arquivo .JAR ele poderia ser aberto em qualquer lugar com o JVM instalado ?

Boa tarde.

A partir das versões do JDK 6.0, o instalador cria um chave no registro do windows que associa todo arquivo “.jar" ao Interpretador/Compilador “Javaw” do JVM, ou seja, seria a mesma coisa que quando voce clica num arquivo com a extensão ".doc” ou “.docx" ele abre o Winword.exe e de quebre já abre o arquivo clicado, com o Java, o Javaw, vai interpretar os bytecodes do ser arquivo ".jar” e em alguns casos, nos códigos repetitivos, o compilador “Just-in-Time” já recompila para o código nativo da máquina dando celeridade de execução.

Versões anteriores do JDK 6.0, o arquivos “.jar" só poderiam ser executados, invocando o Interpretador “Java” dentro do promt do DOS, neste caso, a sugestão da nossa amiga Lina, cabe muito bem, ou seja voce criar um arquivo ".bat” com comandos do DOS invocando o Interpretador “Java”.

Google dork: making jar-file

http://www.google.com.br/search?hl=pt-BR&client=firefox-a&hs=FiE&rls=org.mozilla%3Apt-BR%3Aofficial&q=making+jar-file&aq=f&aqi=&aql=&oq=&gs_rfai=

Boa tarde a todos.

[quote=wellington.nogueira]


Apenas um cuidado, as vezes o registro de execução do jar automaticamente através do javaw se perde (instaladores de programas de compactação tendem a fazer isso).

Quanto ao bat, pode utilizar o javaw também ou então pode-se criar um executável que faça essa ação (o eclipse faz algo do tipo), ou simplesmente um atalho.[/quote]

Pra falar a verdade, a linguagem java inicialmente não foi criada para gerar executáveis, e até hoje não gera, isto porque iria contra os seus princípios da multiplataforma, onde uma vez linkeditada as bibliotecas do sistema operacional onde foi desenvolvido o projeto, o programa passa a ser monoplataforma e a máquina virtual perde totalmente a sua funcionalidade. O que se cria na realidade, não são arquivos executáveis, e é exatamente isto que precisa ser esclarecido, o que se cria são mecanismos de associação dos arquivos “.jar" fazendo com que inicia-se a execução do interpretador Javaw para interpretar o arquivo ".jar” que ora foi clicado.

A compilação do “Just-in-Time” citada por mim anteriormente, fica temporiamente na camada de abstração do JVM, enquanto a aplicação estiver sendo rodada, que logo se perde quando esta pará de ser executada.

[quote=discorpio]A partir das versões do JDK 6.0, o instalador cria um chave no registro do windows que associa todo arquivo “.jar" ao Interpretador/Compilador “Javaw” do JVM, ou seja, seria a mesma coisa que quando voce clica num arquivo com a extensão ".doc” ou “.docx" ele abre o Winword.exe e de quebre já abre o arquivo clicado, com o Java, o Javaw, vai interpretar os bytecodes do ser arquivo ".jar” e em alguns casos, nos códigos repetitivos, o compilador “Just-in-Time” já recompila para o código nativo da máquina dando celeridade de execução.

Versões anteriores do JDK 6.0, o arquivos “.jar" só poderiam ser executados, invocando o Interpretador “Java” dentro do promt do DOS, neste caso, a sugestão da nossa amiga Lina, cabe muito bem, ou seja voce criar um arquivo ".bat” com comandos do DOS invocando o Interpretador “Java”.[/quote]
Apenas um cuidado, as vezes o registro de execução do jar automaticamente através do javaw se perde (instaladores de programas de compactação tendem a fazer isso).

Quanto ao bat, pode utilizar o javaw também ou então pode-se criar um executável que faça essa ação (o eclipse faz algo do tipo), ou simplesmente um atalho.

[quote=discorpio]Boa tarde a todos.

[quote=wellington.nogueira]


[/quote]Pra falar a verdade, a linguagem java inicialmente não foi criada para gerar executáveis, e até hoje não gera, isto porque iria contra os seus princípios da multiplataforma, onde uma vez linkeditada as bibliotecas do sistema operacional onde foi desenvolvido o projeto, o programa passa a ser monoplataforma e a máquina virtual perde totalmente a sua funcionalidade. O que se cria na realidade, não são arquivos executáveis, e é exatamente isto que precisa ser esclarecido, o que se cria são mecanismos de associação dos arquivos “.jar" fazendo com que inicia-se a execução do interpretador Javaw para interpretar o arquivo ".jar” que ora foi clicado.

A compilação do “Just-in-Time” citada por mim anteriormente, fica temporiamente na camada de abstração do JVM, enquanto a aplicação estiver sendo rodada, que logo se perde quando esta pará de ser executada.[/quote]
Eu entendi o que você disse. Apenas quis alertar que essa associação do sistema operacional ao executor do javaw pode ser perdida e você não consiga mais executar dessa forma (vale lembrar que, essa forma só funciona com um manifest.mf escrito corretamente, indicando a main-class).

Eu coloquei que o desenvolvedor pode, alternativamente, criar programas de execução batch (seja um .bat ou um .sh, ou outro) ou um executável que configure o ambiente e invoque o arquivo jar. No caso, para o programa ser multi-plataforma, essas alternativas deveriam ser realizadas para cada SO aplicável à solução. Ou então o usuário teria que invocar manualmente a ação.