Executavel JAR com JVM incluso

Calma gente!
antes de me bombardear com msgs dizendo…
“É impossivel…”
“Não vale a pena…” e etc…

leia antes a condição e o motivo da pessoa (no caso EU =P) que precisa disso…

tenho um aplicativo em Java rodando perfeitamente utilizando JRE 6.0…
eh um projeto para o meu TCC da faculdade… e preciso apresentar ele na maquina que eles forneceram…

o problema é que… na maldita maquina da facul… soh tem instalado o JRE 1.4… e NINGUEM tem acesso a instalar uma versão mais recente naquela porcaria… por mais que eu tente, nada deu certo…

então eu preciso de algo que inclua o JVM dentro de um executavel JAR ou EXE ou seja oq for…
e que faça meu programa rodar perfeitamente sendo que é inviavel refazer o codigo para rodar no 1.4…

não importa se vai ficar 5, 10 ou 300 MBs maior… pra isso existe CDs/pendrives e etc…
alguem poderia me dizer onde encontro um programa q faça isso? ou um meio “manual” de fazer?

eu sei q existe metodos para se fazer isso, mas por mais que eu procure no Google e em Foruns só encontro as frases “Não vale a pena e bla bla bla”, e nenhuma resposta util…

Obrigado =)

Não dá pra bootar um LiveCD?

entao… creio q nao…
pois no dia da apresentação outros projetos estarão na maquina tambem aguardando a sua vez de serem apresentados…

não acho q vão permitir bootar a maquina…

Pergunte então.

2ª opção: A máquina tem acesso à rede? Dá pra rodar um VNC nela e rodar o trabalho remotamente?

3ª opção: Tem algum amigo/colega/professor com quem consiga emprestar um notebook?

Se puder apareça um dia antes da apresentação e consiga a senha de adminstrador de algum jeito (basta bootar um CD).

Em vez de ter de instalar a JVM, faça o seguinte:

  • Instale a JVM no seu micro - provavelmente em “c:\arquivos de programas\java\jre6”
  • Copie esse diretório para um outro qualquer (por exemplo, “c:\tcc\jre6”
  • Para rodar seu programa, veja se ele roda direitinho usando o comando “c:\tcc\jre6\bin\java -jar SeuPrograma.jar” (ou seja, usando o java.exe do diretório do c:\tcc em vez do padrão do Java). Se rodar, então crie uma batch que rode seu programa, zipe esse diretório e grave-o em um pen-drive ou em um CD.
  • Na hora que for demonstrar o seu programa, descompacte o arquivo .zip que você criou no passo anterior, e rode sua batch.
  • Teste isso antes em um micro de outra pessoa, de preferência com um Windows bem pelado (sem Java nem porcaria nenhuma).

Atenção - não é bom tentar rodar a JVM a partir de um CD. É que quando você grava um CD, há um limite de 8 níveis de diretórios e 24 caracteres para um nome de arquivo, então não sei se algum dos arquivos da JVM pode ter algum problema.

Pergunte então.

2ª opção: A máquina tem acesso à rede? Dá pra rodar um VNC nela e rodar o trabalho remotamente?

3ª opção: Tem algum amigo/colega/professor com quem consiga emprestar um notebook?

Se puder apareça um dia antes da apresentação e consiga a senha de adminstrador de algum jeito (basta bootar um CD).

[/quote]

então… VNC nao tem…
a maquina eh bem podre mesmo com relação a programas e permissões…
eh provavel q eu tente levar um notebook em ultimo caso (apesar de ninguem do meu grupo possuir um)… acho q eh mais facil doq eu tentar arrumar a propria maquina da faculdade

[quote=thingol]Em vez de ter de instalar a JVM, faça o seguinte:

  • Instale a JVM no seu micro - provavelmente em “c:\arquivos de programas\java\jre6”
  • Copie esse diretório para um outro qualquer (por exemplo, “c:\tcc\jre6”
  • Para rodar seu programa, veja se ele roda direitinho usando o comando “c:\tcc\jre6\bin\java -jar SeuPrograma.jar” (ou seja, usando o java.exe do diretório do c:\tcc em vez do padrão do Java). Se rodar, então crie uma batch que rode seu programa, zipe esse diretório e grave-o em um pen-drive ou em um CD.
  • Na hora que for demonstrar o seu programa, descompacte o arquivo .zip que você criou no passo anterior, e rode sua batch.
  • Teste isso antes em um micro de outra pessoa, de preferência com um Windows bem pelado (sem Java nem porcaria nenhuma).

Atenção - não é bom tentar rodar a JVM a partir de um CD. É que quando você grava um CD, há um limite de 8 níveis de diretórios e 24 caracteres para um nome de arquivo, então não sei se algum dos arquivos da JVM pode ter algum problema.
[/quote]

tinha pensado nisso… soh q nao tive tempo de testar na faculdade se isso funciona…

aki na minha propria maquina, funcionou perfeito…
d:\tcc\jre1.6.0_05\bin\java.exe -jar d:\tcc\XXXX.jar

nao sei se funcionaria de qqer jeito pq tenho o JRE instalado na makina…
mas vou tentar isso lah… espero q de certo…

caso funcione minha portabilidade vai ser a pasta descompactada do JRE 6 no meu pendrive hahaha =P

mas mesmo assim continuo aceitando sugestões de um metodo “executavel”…

Obrigado =)

Temos um sistema com cerca de 20.000 clientes que funciona exatamente desse jeito - como não podemos supor que o cliente tenha o Java instalado e ainda por cima na versão que precisamos, simplesmente criamos um diretório e copiamos o JRE, mais a aplicação, dentro dele. A versão é velha (1.4.2_08) mas funciona direitinho. Provavelmente teremos de mandar uma atualização para a versão 7 em CD :stuck_out_tongue: