Setar o -Xmx dentro do jar executavel

3 respostas
E

Bom dia, preciso configura o -Xmx256m dentro do jar executavel, pois o usuario pode entrar diretamente por este jar,
sem utilizar o prompt.
No eclipse tem a opção do Runnable jar, mas tambem não utiliza os argumentos do projeto, e como são processamentos grandes ocorre estouro da heap,
pois o padrão do java é 64m.
Acredito que deva ser configurado dentro do jar, pois quando o programa for colocado em outros computadores, não da para ficar configurando o jvm.
Se algum tiver alguma sugestão, ficarei grato.

3 Respostas

renzonuccitelli

Também fico no aguardo pra saber a solução. O que eu fazia como paliativo era fazer um bat com as configurações desejadas para execução e passava somento um atalho para esse bat para inicialização do programa…

R

Infelizmente não me parece existir solução para isso no momento. Um arquivo JAR pode conter um “manifesto” com algumas informações sobre a execução da aplicação, mas infelizmente esse manifesto não permite informar os parâmetros de execução da máquina virtual:

http://java.sun.com/j2se/1.5.0/docs/guide/jar/jar.html#JAR%20Manifest

O modo como resolvo isso é parecido com o do renzonuccitelli: crio um BAT ou um EXE. O script BAT é prático de editar, mas mostra por um momento o prompt do DOS, há clientes que não gostam. Já meu EXE só faz executar o Java passando o JAR como parâmetro (o nome do JAR e outros itens são lidos a partir de um arquivo de configuração), tem a vantagem de não exibir o prompt do DOS. Fiz o EXE com o Delphi. Se você não quer ou não pode criar seu próprio EXE, há produtos como o exe4j:

http://www.ej-technologies.com/products/exe4j/overview.html

kaique

Eu também acho que não existe como fazer isso numa execução diretamente do .jar. A instalação do GlassFish precisa de uma alteração nesses parâmetros de configuração da VM, mas lá no site deles tem um passo-a-passo para instalar o Container que pede que o usuário, explicitamente, altere as configurações da VM no momento de executar o .jar.

[]'s.

Criado 6 de maio de 2009
Ultima resposta 6 de mai. de 2009
Respostas 3
Participantes 4