Executar arquivo .jar com clique duplo  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
renato1010
Thread.start()
[Avatar]

Membro desde: 18/10/2008 11:17:13
Mensagens: 37
Offline

Ola pessoal

Estou com o seguinte problema:
Criei uma aplicação desktop no Netbeans 6.5, mas o arquivo jar gerado não executa a partir de um clique duplo, so funciona se for via prompt ou no NetBeans.
Gostaria de fazer com o arquivo execute com duplo clique para distribuir a aplicação.

Já pesquisei aqui no forum, li varias coisas a respeito mais nada resolve esse problema, também ja segui o tutorial de configuração do Java e até desinstalei tudo e instalei novamente, mas não executa com clique duplo de jeito nenhum.

Sempre da a mensagem de erro: "Could not find the main class: C:\projeto\proj\dist\meuprograma.jar. Program will exit."
Pelo que entendi o java não ta encontrando a classe principal do programa, mas não sei como corrigir isso. Ja olhei o manifest e ta constando a classe principal la.
Como disse, o jar foi gerado no Netbeans e não fiz nenhuma alteração.
So para constar, converti o .jar gerado em .exe e funciona perfeito, mas não queria distribuir a aplicação com um .exe e sim como o .jar.
Uso a jkd 1.7

Agradeço qualquer ajuda

Renato
Dirceu Roden
Debugger
[Avatar]

Membro desde: 23/03/2008 20:13:06
Mensagens: 52
Localização: Dois Irmãos - RS
Offline

Quando vc cria o jar na tela de saída o netbeans informa algo como:

To run this application from the command line without Ant, try:
java -jar "C:\projeto\proj\dist\meuprograma.jar"

Tente criar um atalho com esta linha de comando.


Dirceu Roden

SCJP-5 Sun Certified Java Programmer
[Email] [MSN]
Felipe.JavaMan
Thread.start()
[Avatar]

Membro desde: 16/09/2008 08:09:37
Mensagens: 39
Offline

Cara, vc pode criar um arquivo .bat
Assim com duplo clic você consegue executar a aplicação.

o sei arquivo .bat teria o seguinte coonteúdo:

java -jar [arquivo].jar
pmlm
GUJ Master

Membro desde: 20/04/2009 12:20:07
Mensagens: 1714
Localização: Portugal
Offline

No windows explorer, opções de pasta, altera o programa com que são abertos os ficheiros jar.

Põe java -jar "%1"
renato1010
Thread.start()
[Avatar]

Membro desde: 18/10/2008 11:17:13
Mensagens: 37
Offline

Olá pessoal

Sim, o Netbeans da a mensagem abaixo quando crio o arquivo jar.

To run this application from the command line without Ant, try:
java -jar "C:\projeto\proj\dist\meuprograma.jar"



A opção de criar o arquivo .bat eu até ja tinha feito e funcionou, mas o arquivo .bat qualquer um pode alterar facilmente, então não acho legal.
Criar o atalho com o comando para executar o arquivo também funcionou, mas ele abriu a tela do prompt que chama o programa, so que a tela do prompt permanece aberta também e se fechar ela, fecha também a aplicação (no caso o arquivo .jar que esta executando).
Tem como fazer a prompt chamar a a aplicação e ficar so a tela dessa aplicação aberta?
Quanto a alterar o programa que abre os arquivos .jar colocando java -jar "%1" não consegui fazer, pois ele não tem a opção "avançado".

O que não entendo é o seguinte: o arquivo .jar deveria executar normalmente com o clique duplo através da maquina virtual do java (javaw) e isso não está acontencendo.
Ja tentei de tudo e não consegui, e ja pesquisei bastante também, vi que várias pessoas teve o mesmo problema, mas não obtive respostas.


Renato Silva
KWill
Virtual Machine Man
[Avatar]

Membro desde: 18/09/2006 10:05:46
Mensagens: 609
Offline

renato1010 wrote:Olá pessoal

Sim, o Netbeans da a mensagem abaixo quando crio o arquivo jar.

To run this application from the command line without Ant, try:
java -jar "C:\projeto\proj\dist\meuprograma.jar"



A opção de criar o arquivo .bat eu até ja tinha feito e funcionou, mas o arquivo .bat qualquer um pode alterar facilmente, então não acho legal.
Criar o atalho com o comando para executar o arquivo também funcionou, mas ele abriu a tela do prompt que chama o programa, so que a tela do prompt permanece aberta também e se fechar ela, fecha também a aplicação (no caso o arquivo .jar que esta executando).
Tem como fazer a prompt chamar a a aplicação e ficar so a tela dessa aplicação aberta?
Quanto a alterar o programa que abre os arquivos .jar colocando java -jar "%1" não consegui fazer, pois ele não tem a opção "avançado".

O que não entendo é o seguinte: o arquivo .jar deveria executar normalmente com o clique duplo através da maquina virtual do java (javaw) e isso não está acontencendo.
Ja tentei de tudo e não consegui, e ja pesquisei bastante também, vi que várias pessoas teve o mesmo problema, mas não obtive respostas.


Renato Silva

Para rodar o seu arquivo jar via duplo-clique com "javaw", seu aplicativo tem que ser daqueles que não sejam de "puro console", tem que fazer uso de Swing/AWT/SWT e outros pacotes de interface gráfica disponíveis para Java.

Inté.

"Só estou certo de que não possuo outras certezas" - KWill
"Não penso, mas Googlo, logo existo!" - Geração Copy-Cola
renato1010
Thread.start()
[Avatar]

Membro desde: 18/10/2008 11:17:13
Mensagens: 37
Offline

Então, por isso mesmo.
Minha aplicação não é puro console, possui o ambiente gráfica (janelas, imagens, tabelas,etc)
Estou utilizando os compontes swing, awt, etc.
Funciona perfeitamente quando chamo no console, aí ela abre a aplicação e sua devida interface grafica.

Continuo tentando fazer funcionar...


Renato
renato1010
Thread.start()
[Avatar]

Membro desde: 18/10/2008 11:17:13
Mensagens: 37
Offline

KWill wrote:
Para rodar o seu arquivo jar via duplo-clique com "javaw", seu aplicativo tem que ser daqueles que não sejam de "puro console", tem que fazer uso de Swing/AWT/SWT e outros pacotes de interface gráfica disponíveis para Java.

Inté.



Então, por isso mesmo.
Minha aplicação não é puro console, possui o ambiente gráfica (janelas, imagens, tabelas,etc)
Estou utilizando os compontes swing, awt, etc.
Funciona perfeitamente quando chamo no console, aí ela abre a aplicação e sua devida interface grafica.

Continuo tentando fazer funcionar...

This message was edited 1 time. Last update was at 13/05/2009 10:11:43

KWill
Virtual Machine Man
[Avatar]

Membro desde: 18/09/2006 10:05:46
Mensagens: 609
Offline

renato1010 wrote:
KWill wrote:
Para rodar o seu arquivo jar via duplo-clique com "javaw", seu aplicativo tem que ser daqueles que não sejam de "puro console", tem que fazer uso de Swing/AWT/SWT e outros pacotes de interface gráfica disponíveis para Java.

Inté.



Então, por isso mesmo.
Minha aplicação não é puro console, possui o ambiente gráfica (janelas, imagens, tabelas,etc)
Estou utilizando os compontes swing, awt, etc.
Funciona perfeitamente quando chamo no console, aí ela abre a aplicação e sua devida interface grafica.

Continuo tentando fazer funcionar...

Então pode ser que o "javaw" que está sendo chamado para executar seu aplicativo seja de uma versão de especificação Java diferente da versão de especificação Java que foi utilizada para criar o aplicativo. Tive alguns problemas com aplicativos que criei que faziam uso de SystemTray, já que esse recurso só está disponível a partir do Java 1.6 e o "javaw" que era chamado no meu caso era um que só suportava Java 1.5, ocasionando erros "invisíveis" para mim na época. Reconfigure via menu do botão direito sobre o aquivo Jar, "Abrir Com..." para que o Windows use a versão correta do "javaw" para inicializar seu aplicativo.

Inté.

"Só estou certo de que não possuo outras certezas" - KWill
"Não penso, mas Googlo, logo existo!" - Geração Copy-Cola
renato1010
Thread.start()
[Avatar]

Membro desde: 18/10/2008 11:17:13
Mensagens: 37
Offline


Então pode ser que o "javaw" que está sendo chamado para executar seu aplicativo seja de uma versão de especificação Java diferente da versão de especificação Java que foi utilizada para criar o aplicativo. Tive alguns problemas com aplicativos que criei que faziam uso de SystemTray, já que esse recurso só está disponível a partir do Java 1.6 e o "javaw" que era chamado no meu caso era um que só suportava Java 1.5, ocasionando erros "invisíveis" para mim na época. Reconfigure via menu do botão direito sobre o aquivo Jar, "Abrir Com..." para que o Windows use a versão correta do "javaw" para inicializar seu aplicativo.



Isso também não é. Criei a aplicação utilizando Netbeans 6.5 e a jdk 1.6 e não funcionou. Depois desinstalei tudo e reinstalei a jdk 1.7 para ver se funcionava, mas não deu em nada de novo. Já to pensando em distribuir a aplicação utilizando o .exe mesmo, ja que o .jar não funciona aqui de jeito nenhum.
Mas ainda não desisti, continuo tentando fazer funcionar.

Renato
Dirceu Roden
Debugger
[Avatar]

Membro desde: 23/03/2008 20:13:06
Mensagens: 52
Localização: Dois Irmãos - RS
Offline

vc já testou em algum outro computador ou só no teu???????


Dirceu Roden

SCJP-5 Sun Certified Java Programmer
[Email] [MSN]
MS0lhao
What is classpath?
[Avatar]

Membro desde: 29/04/2008 13:13:21
Mensagens: 6
Offline

Dirceu Roden wrote:vc já testou em algum outro computador ou só no teu???????


Convém experimentar noutro computador, aparentemente você fez tudo bem.

Dê aqui uma vista de olhos: http://java.sun.com/docs/books/tutorial/deployment/jar/index.html

Se não der, tente criar o .jar com o Eclipse IDE
samea
JavaChild
[Avatar]

Membro desde: 09/12/2008 12:27:10
Mensagens: 116
Offline

oi gente estou tentando exportar o .jar da minha app mas eu uso o look and feel liquid, mas na hora que eu exporto ela não mostra a tela com o look alguem ai sabe me dizer como que eu exporto o ja da minha app com o look and feel liquid??????
Alguem ai sabe como fazer isso????
Me dê dicas por favor!!!!
MS0lhao
What is classpath?
[Avatar]

Membro desde: 29/04/2008 13:13:21
Mensagens: 6
Offline

samea wrote:oi gente estou tentando exportar o .jar da minha app mas eu uso o look and feel liquid, mas na hora que eu exporto ela não mostra a tela com o look alguem ai sabe me dizer como que eu exporto o ja da minha app com o look and feel liquid??????
Alguem ai sabe como fazer isso????
Me dê dicas por favor!!!!


No eclipse faça o seguinte:

File > Export ...

Expanda a secção Java e escolha "Runnable JAR File", isto faz com que todas as libs necessárias sejam incluídas no .jar.

Eu fiz assim e funcionou.
samea
JavaChild
[Avatar]

Membro desde: 09/12/2008 12:27:10
Mensagens: 116
Offline

Eu nao tenho essa opção no meu eclipse quando eu expando o java ele so ma da duas uma é o jar file e o outro é o javadoc!!
Estou usando o

EasyEclipse-for-LAMP-1.2.2.2

sera que é por isso???
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team