Basicamente eu tenho o mesmo problema que emessa questão. No entanto, a solução proposta não funciona para mim, nem em um servidor Win2003 e nem em um laptop Win7 usado para testes.
Eu tenho um programa Java SE 6 que é iniciado por um programa .Net por meio de uma dll de ponte ActiveX. Para testar usei meu computador Win7 com 3 JREs instalados; jdk1.7.0_55, jre1.6.0_45 e jre1.6.0_38-x64. A aplicação sempre usa o jre1.6.0_45 e inicializa com no máximo 95040KB de memória mas preciso que seja um pouco mais.
O que funciona para aumentar a memória é editar o arquivo <userprofile>\AppData\LocalLow\Sun\Java\Deployment\deployment.properties
e adicionar a seguinte linha:
deployment.javaws.jre.1.args=-Xmx100m
mas o problema é que isso só funciona para um usuário e quero que funcione para todos os usuários de um servidor.
Como discutido emesta respostaEu criei um arquivo C:\Windows\Sun\Java\Deployment\deployment.config
com conteúdo
deployment.system.config=file\:C\:/Windows/Sun/Java/Deployment/deployment.properties
Em seguida, copiei o arquivo deploy.properties do meu perfil de usuário para a C:\Windows\Sun\Java\Deployment\
pasta e adicionei novamente a deployment.javaws.jre.1.args=-Xmx100m
linha ao arquivo copiado. Mas estranhamente isso não funciona.
Coisas que tentei até agora:
colocando os arquivos implantação.config e implantação.properties na pasta lib do JRE utilizado (D:\Java\jre1.6.0_45\lib) e do JRE mais recente (D:\Java\jdk1.7.0_55\jre\ biblioteca)
colocando os arquivos na pasta C:\Windows\Sun\Java\Deployment de um servidor Win2003 (virtual) com apenas um JRE instalado (v1.6.0_11)
adicionei as linhas
deployment.javaws.jre.0.args=-Xmx100
edeployment.javaws.jre.2.args=-Xmx100
assim todos os JREs instalados usariam as mesmas configuraçõesadicionou a segunda linha ao
deployment.system.config.mandatory=true
arquivo implantação.config e alterou o caminho para o arquivo implantação.properties para algo que não existe -> Nada aconteceu e o aplicativo iniciaria bem, então parece que o arquivo implantação.config foi totalmente ignorado por o JRE.
Alguém tem idéia de onde estou errando?
Responder1
Não tenho certeza se isso
file\:C\:/Windows/Sun/Java/Deployment/deployment.properties
é válidoURI do arquivo do Windows.Documentação ORACLElista um ligeiramente diferente e mais plausível:file:///C:/Windows/Sun/Java/Deployment/deployment.properties
Tente configurar
deployment.system.config.mandatory
eTrue
veja se o seu aplicativo não inicia. Se falhar, significa que o JAVA não pode acessardeployment.config
pelo seu URI e precisa de correção:A propriedade deploy.system.config.mandatory é booleana.Se configurado como true, o arquivo deploy.properties apontado pela propriedade deploy.system.config deverá ser localizado e carregado com êxito, caso contrário, nada poderá ser executado.Se a propriedade for configurada como falsa, será feita uma tentativa de localizar e carregar a implementação. arquivo de propriedades apontado pela propriedade deploy.system.config. Se for bem-sucedido, o arquivo será usado; caso contrário, o arquivo será ignorado. O padrão para a propriedade deploy.system.config.mandatory é falso.
Esta postagemsugere que você pode tentar excluir:
Arquivo:
%localappdata%\Sun\Java\Deployment\deployment.properties
Chave do registro:
HKEY_CURRENT_USER\Software\AppDataLow\Software\JavaSoft\DeploymentProperties
Há um problema com JAVA 7, descrito nesta postagem:Implantação de atualização automática Java 1.7 com SCCM/MDT
Mais pensamentos:
Estou começando a achar que essa configuração do sistema JRE não funciona para nenhuma versão Java. Isso ou estou completamente faltando alguma coisa
Bem, descobri que definitivamente não funcionou1.6.0_03 e 1.6.0_07:
P:As propriedades de implementação relacionadas ao plug-in Java são desconsideradas no arquivo de propriedades de implementação no nível do sistema. O problema é estritamente reproduzível em 1.6.0_03 e 1.6.0_07.
A: Testado com 6u14 b01. A configuração de implementação no nível do sistema está funcionando no novo plug-in java. Não vamos consertar isso para o plugin antigo. Feche o CR como não reproduzível no novo plugin.
A configuração de implantação no nível do sistema é um recurso do java webstart. Não foi usado no plug-in Java.
Desde 6u10, o mesmo mecanismo de seleção jre é usado tanto para o novo plugin java quanto para o java webstart. Isso possibilita que o novo plugin adapte a configuração do nível do sistema. Marque este CR como RFE e reduza a prioridade para médio.
E há uma espécie de solução alternativa:
O seguinte pode servir como solução alternativa para o problema: "Como configurar uma propriedade (por exemplo, Xmx) globalmente em um PC com Windows?"
No entanto, isso não é específico para determinados componentes como Java Plugin ou Java Web Start.
Abra o Painel de Controle do Windows: Avançado → Variáveis de Ambiente → Variáveis de Sistema → Nova Variável
Nome da variável:_JAVA_OPÇÕES
Valor variável:-Xmx256m #(por exemplo)
Feche todas as janelas pressionando OKAo reiniciar o "Internet Explorer" a configuração estará ativa. A configuração afetará todos os programas Java: tanto o inicializador "java.exe" quanto o Java Web Start "javaws.exe" e o plug-in Java conforme ele é iniciado por um navegador.