Možnost -D v Javi: nastavljanje in branje sistemskih lastnosti
Datum objave:
Posodobljeno:
Tehnični članki > Možnost -D v Javi: nastavljanje in branje sistemskih lastnosti
Stanje in varna uporaba v letu 2026
Bistvo: Možnost -Dname=value pred glavnim razredom ali argumentom -jar nastavi sistemsko lastnost JVM. Koda Java jo prebere z System.getProperty("name"); sistemska lastnost ni isto kot okoljska spremenljivka operacijskega sistema.
Kaj boste izvedeli
- Kako zaganjalnik Java obdela možnosti
-Din kam shrani njihove vrednosti. - Kako pregledati lastnosti, ne da bi zaupne podatke razkrili v ukazni vrstici ali na seznamu procesov.
- Kako prvotni primer za Javo 11 uporabiti z zdaj podprtimi izdajami JDK.
Komu je članek namenjen? Razvijalcem in skrbnikom sistemov, ki odpravljajo težave z nastavitvami aplikacij v različnih okoljih.
Opomba za leto 2026: Mehanizem je še vedno aktualen, vendar za poverilnice uporabite upravljalnik skrivnosti ali zaščiten konfiguracijski vir. Spodnji prikaz dokumentira prvotni preizkus z Javo 11 in ni priporočilo za posredovanje skrivnosti z argumenti -D.
Varnostna opomba: Ukazi in konfiguracijski primeri iz prvotnega članka niso bili znova preizkušeni v sodobnem produkcijskem okolju. Pred uporabo v ločenem preizkusnem okolju preverite podprte različice, izdelajte varnostne kopije ter določite nadzor dostopa in postopek povrnitve.
Uradni viri
Pregled
Ob zagonu Jave lahko na primer navedete "-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager". Enako možnost je mogoče v Eclipse vnesti med argumente VM, kot prikazuje spodnja slika.
V nadaljevanju je pojasnjeno, kaj se zgodi, ko ukazu dodate možnost "-DXXXXXX".
Kazalo vsebine
1. Kaj je možnost D (-D)?
Možnost D (-D) ob zagonu Jave nastavi sistemsko lastnost.
Naslednji primer pokaže, kako nastavljeno vrednost prebere program.
1-1. Kaj se zgodi ob zagonu z možnostjo D (-D)
V Eclipse nastavite argument VM "-Dtest=testoption", kot prikazuje spodnja slika.
Ustvarite preprost glavni razred, kot je prikazano spodaj.
Izpis glavnega razreda pokaže, da je za lastnost "test" vrnjena vrednost "testoption".
Sistemsko lastnost, nastavljeno ob zagonu Jave, je torej mogoče prebrati prek razreda System.
2. Povzetek
Z možnostjo D (-D) ob zagonu nastavite sistemsko lastnost, program pa jo prebere prek razreda System. To je uporabno predvsem za nastavitve, ki se razlikujejo med okolji.
Za zaupne vrednosti namesto argumentov ukazne vrstice uporabite namensko upravljanje skrivnosti.



