Sprache

ProcessBuilder.Environment Methode

Definition

Gibt eine Zeichenfolgenzuordnungsansicht der Umgebung dieses Prozess-Generators zurück.

[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>

Gibt zurück

Umgebung dieses Prozess-Generators

Attribute

Hinweise

Gibt eine Zeichenfolgenzuordnungsansicht der Umgebung dieses Prozess-Generators zurück.

Immer wenn ein Prozess-Generator erstellt wird, wird die Umgebung in eine Kopie der aktuellen Prozessumgebung initialisiert (siehe System#getenv()). Unterverarbeitungen, die anschließend von der Methode dieses Objekts #start() gestartet wurden, verwenden diese Zuordnung als umgebung.

Das zurückgegebene Objekt kann mithilfe gewöhnlicher java.util.Map Map Vorgänge geändert werden. Diese Änderungen sind für Teilprozesse sichtbar, die über die #start() Methode gestartet wurden. Zwei ProcessBuilder Instanzen enthalten immer unabhängige Prozessumgebungen, sodass Änderungen an der zurückgegebenen Zuordnung niemals in einer anderen ProcessBuilder Instanz oder den von System#getenv System.getenvihnen zurückgegebenen Werten widergespiegelt werden.

Wenn vom System keine Umgebungsvariablen unterstützt werden, wird eine leere Zuordnung zurückgegeben.

Die zurückgegebene Zuordnung lässt keine NULL-Schlüssel oder -Werte zu. Beim Versuch, das Vorhandensein eines NULL-Schlüssels oder -Werts einzufügen oder abzufragen, wird ein NullPointerException. Beim Versuch, das Vorhandensein eines Schlüssels oder Werts abzufragen, der nicht vom Typ String ist, wird ein ClassCastException.

Das Verhalten der zurückgegebenen Karte ist systemabhängig. Ein System darf Änderungen an Umgebungsvariablen nicht zulassen oder bestimmte Variablennamen oder Werte verbieten. Aus diesem Grund können Versuche zum Ändern der Karte fehlschlagen UnsupportedOperationException oder IllegalArgumentException wenn die Änderung vom Betriebssystem nicht zulässig ist.

Da das externe Format von Umgebungsvariablennamen und -werten systemabhängig ist, gibt es möglicherweise keine 1:1-Zuordnung zwischen ihnen und Java Unicode-Zeichenfolgen. Dennoch wird die Zuordnung so implementiert, dass Umgebungsvariablen, die nicht durch Java Code geändert werden, eine unveränderte native Darstellung im Unterprozess aufweisen.

Die zurückgegebene Karte und ihre Sammlungsansichten dürfen nicht dem allgemeinen Vertrag der und Object#equals der Object#hashCode Methoden gehorchen.

Bei der zurückgegebenen Karte wird in der Regel die Groß-/Kleinschreibung auf allen Plattformen beachtet.

Wenn ein Sicherheitsmanager vorhanden ist, wird die SecurityManager#checkPermission checkPermission Methode mit einer RuntimePermission("getenv.*") Berechtigung aufgerufen. Dies kann zu einem SecurityException Auslösen führen.

Beim Übergeben von Informationen an einen Java-Unterprozess werden Systemeigenschaften im Allgemeinen gegenüber Umgebungsvariablen bevorzugt.

Java Dokumentation für java.lang.ProcessBuilder.environment().

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: