Właściwości systemowe Java z -D: składnia i priorytet


Data publikacji:

Aktualizacja:


Artykuły > Właściwości systemowe Java z -D: składnia i priorytet

Stan na rok 2026 i bezpieczne użytkowanie

Wniosek: Umieść -Dname=value przed główną klasą lub argumentem -jar, aby zdefiniować właściwość systemu JVM. Kod Java odczytuje to za pomocą System.getProperty("name")); to nie to samo, co zmienna środowiskowa systemu operacyjnego.

Czego się nauczysz

  • Jak program uruchamiający Java analizuje opcje -D i gdzie jest przechowywana wartość.
  • Jak sprawdzać właściwości bez ujawniania tajemnic do wierszy poleceń lub list procesów.
  • Jak oryginalny przykład Java 11 jest odwzorowany na aktualnie obsługiwane wersje JDK.

Dla kogo: programistów i operatorów Java diagnozujących konfigurację aplikacji specyficzną dla środowiska.

Stanowisko 2026: Mechanizm pozostaje aktualny, ale do poświadczeń użyj menedżera kluczy tajnych lub chronionego źródła konfiguracji. Poniższy opis opisuje oryginalny test Java 11 i nie należy go czytać jako zalecenia umieszczania kluczy tajnych w argumentach -D.

Uwaga dotycząca bezpieczeństwa: polecenia i przykłady konfiguracji z pierwotnego artykułu nie zostały ponownie uruchomione we współczesnym środowisku produkcyjnym. Przed użyciem sprawdź wspierane wersje, kopie zapasowe, kontrolę dostępu i procedurę wycofania w oddzielnym środowisku testowym.

Oficjalne źródła pierwotne

Przegląd

Właściwość systemową podaje się przed klasą główną lub opcją -jar, na przykład "-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager". W Eclipse dodaj ją w polu "Konfiguracja uruchomieniowa ⇒ Argumenty VM", jak na poniższym ekranie.

Ekran Eclipse

W tej sekcji wyjaśniono, co się dzieje po dodaniu tej litery "-DXXXXXX".

Spis treści

  1. Co to jest opcja D (-D)?
  2. Podsumowanie

1. Co to jest opcja D (-D)?

Opcja -D definiuje właściwość systemową podczas uruchamiania JVM. Program może ją następnie odczytać za pomocą System.getProperty.

1-1. Co się stanie, jeśli program zostanie uruchomiony z opcją D (-D)

W Eclipse dodaj "-Dtest=testoption" do argumentów VM konfiguracji uruchomieniowej, jak pokazano poniżej.

Ekran Eclipse

Utwórz prostą klasę główną, jak pokazano poniżej.

Ekran Eclipse

Wykonanie tej klasy głównej pokazuje, że wartość "testoption" można uzyskać za pomocą argumentu "test" w następujący sposób.

Ekran Eclipse

Oznacza to, że jeśli wartość właściwości systemowej jest ustawiona podczas uruchamiania środowiska Java, można ją pobrać z klasy System.

2. Podsumowanie

Opcja D (-D) podczas uruchamiania języka Java umożliwia pobieranie wartości z klasy System. Jest ona używana na przykład wtedy, gdy chcemy dynamicznie ustawiać różne wartości dla różnych środowisk.

■INFORMATION

Artykuły


■PROFILE

Profil


■Kontakt

Kontakt