As configurações JRE de todo o sistema no arquivo deploy.properties são ignoradas?

As configurações JRE de todo o sistema no arquivo deploy.properties são ignoradas?

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.propertiese 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.configcom 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=-Xmx100mlinha 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=-Xmx100e deployment.javaws.jre.2.args=-Xmx100assim todos os JREs instalados usariam as mesmas configurações

  • adicionou a segunda linha ao deployment.system.config.mandatory=truearquivo 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

  1. 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

  2. Tente configurar deployment.system.config.mandatorye Trueveja se o seu aplicativo não inicia. Se falhar, significa que o JAVA não pode acessar deployment.configpelo 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.

  3. 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

  4. 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 OK

Ao 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.

informação relacionada