Propriedades do sistema Java e variáveis de ambiente
Qual é a diferença entre as propriedades do sistema .getProperties () and environment variables System.getenv () num JVM?
2 answers
Também como Bohemian stated, as variáveis env são definidas no SO (no entanto elas 'podem' ser definidas através de Java) e as propriedades do sistema são passadas como opções da linha de comandos ou definidas via setProperty()
.
propriedades do Sistema são definidos na linha de comandos Java usando a sintaxe
-Dpropertyname=value
. Eles também podem ser adicionados em tempo de execução utilizaçãoSystem.setProperty(String key, String value)
ou através dos váriosSystem.getProperties().load()
métodos.
Para obter uma propriedade específica do sistema pode usarSystem.getProperty(String key)
ouSystem.getProperty(String key, String def)
.variáveis de ambiente estão definidos no SO, por exemplo no Linux
export HOME=/Users/myusername
ou no WindowsSET WINDIR=C:\Windows
etc, e, ao contrário das propriedades, Não ser definido em tempo de execução.
Para obter uma variável de ambiente específica pode usarSystem.getenv(String name)
.