Como alocar mais RAM para Java?


5

Um aplicativo java que estou usando continua travando, quando tive um problema com um aplicativo semelhante, consegui consertá-lo alocando mais da minha RAM para o Java. Como faço isso?

(Atualizei recentemente para 16 GB de RAM, depois de instalar o Java.)

Eu estou em um iMac executando o Mac OSX 10.6.6.

Respostas:


10
java -Xmx1024M -Xms1024M -jar *filename*.jar

Xmx é o valor máximo que você deseja alocar (em MB) e o Xms é o valor inicial. Você pode substituir o 1024 com o valor que você preferir.


posso alterá-lo para aumentar permanentemente a RAM dada a java sempre que eu executo chamar um arquivo .jar?
Kirt

@Bec, não, você não pode fazer isso em todos os arquivos .jar.
jzd

@Bec A única maneira que eu poderia pensar que você poderia fazer isso é específico da IDE. Eu uso o NetBeans e sei que você pode editar o arquivo de configuração do NetBean e dizer para usar mais RAM. Eu suponho que você poderia fazer o mesmo com outros IDE's. Mas, para definir uma quantidade específica usando a linha de comando, acredito que o jzd esteja correto.
Ryan

Além disso, isso é apenas para aplicativos .JAR que podem ser executados sem cabeçalho, sem GUI. para aplicativos que não podem, você está ferrado. O JAVA tem uma solução magnífica para isso, uma vez que não pode ser definido através da placa (o que é bastante estúpido IMO pelo motivo acima mencionado ...)?
Michael Trouw

1
@MichaelTrouw não está correto, você pode aumentar a memória para qualquer aplicativo Java, independentemente de serem executados sem cabeçalho ou com uma GUI. Solução de Ryan é Maneira padrão JAVA para aumentar a memória. Dito isto, você deve ter em mente que muitos servidores de aplicativos e IDEs vêm com seus próprios arquivos de configuração para passar -Xmx argumento para a JVM. Verifique a documentação do seu fornecedor de software.
Stefan Haberl
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.