ProcessBuilder.Environment Método

Definição

Retorna uma exibição de mapa de cadeia de caracteres do ambiente desse construtor de processos.

[Android.Runtime.Register("environment", "()Ljava/util/Map;", "")]
public System.Collections.Generic.IDictionary<string,string>? Environment();
[<Android.Runtime.Register("environment", "()Ljava/util/Map;", "")>]
member this.Environment : unit -> System.Collections.Generic.IDictionary<string, string>

Retornos

ambiente desse construtor de processos

Atributos

Comentários

Retorna uma exibição de mapa de cadeia de caracteres do ambiente desse construtor de processos.

Sempre que um construtor de processos é criado, o ambiente é inicializado para uma cópia do ambiente de processo atual (consulte System#getenv()). Os subprocessos iniciados posteriormente pelo método desse objeto #start() usarão esse mapa como ambiente.

O objeto retornado pode ser modificado usando operações comuns java.util.Map Map . Essas modificações ficarão visíveis para subprocessos iniciados por meio do #start() método. Duas ProcessBuilder instâncias sempre contêm ambientes de processo independentes, portanto, as alterações no mapa retornado nunca serão refletidas em nenhuma outra ProcessBuilder instância ou nos valores retornados por System#getenv System.getenv.

Se o sistema não der suporte a variáveis de ambiente, um mapa vazio será retornado.

O mapa retornado não permite chaves ou valores nulos. A tentativa de inserir ou consultar a presença de uma chave ou valor nulo gerará um NullPointerException. A tentativa de consultar a presença de uma chave ou valor que não é do tipo String gerará um ClassCastException.

O comportamento do mapa retornado depende do sistema. Um sistema pode não permitir modificações em variáveis de ambiente ou pode proibir determinados nomes ou valores de variáveis. Por esse motivo, as tentativas de modificar o mapa podem falhar com UnsupportedOperationException ou IllegalArgumentException se a modificação não for permitida pelo sistema operacional.

Como o formato externo de nomes e valores de variáveis de ambiente é dependente do sistema, pode não haver um mapeamento um-para-um entre eles e as cadeias de caracteres Unicode do Java. No entanto, o mapa é implementado de forma que variáveis de ambiente que não são modificadas por Java código terão uma representação nativa não modificada no subprocesso.

O mapa retornado e suas exibições de coleção podem não obedecer ao contrato geral dos métodos e Object#equals dos Object#hashCode métodos.

O mapa retornado normalmente diferencia maiúsculas de minúsculas em todas as plataformas.

Se houver um gerenciador de segurança, seu SecurityManager#checkPermission checkPermission método será chamado com uma RuntimePermission("getenv.*") permissão. Isso pode resultar em um SecurityException lançamento.

Ao passar informações para um subprocesso Java, as propriedades do sistema geralmente são preferenciais em relação às variáveis de ambiente.

Java documentação para java.lang.ProcessBuilder.environment().

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.

Aplica-se a