Java ha una variabile di ambiente di sistema predefinita che verrà sempre letta/aggiunta quando viene impostata? CATALINA_OTPS
/JAVA_OPTS
etc sembra solo per TOMCAT/JBOSS eccVariabile ambiente di sistema Java
- Non voglio impostare attraverso le proprietà del sistema Java (che è passato in via -Dprop1 = valore1 -Dprop2 = valore2) in quanto si tratta di shell/batch script.
- Dovrebbe funzionare su tutto il sistema operativo, come il file jar doppio clic in Windows.
- Dovrebbe funzionare tra diversi JRE (Sun, IBM, OpenJDK ecc.).
- Non deve comportare la codifica aggiuntiva.
- Dovrebbe funzionare nella maggior parte dei file di configurazione delle librerie, come l'impostazione log4j livello $ {LOG_LEVEL}.
Aggiornamento: Aggiunto item # 4 e 5. Togliere OS dal titolo per rendere più chiara la mia domanda.
Update 2: Dopo aver guardato la risposta di Perception, sembra che il mio oggetto 2 e 3 può essere raggiunto tramite System.getenv
. Come ottenere gli articoli 4 e 5?
Ecco un esempio di scenario: Immagina ora JAVA_DEFAULT_OPTS
è una variabile di ambiente che verrà letta da Java in quanto è diventata lo standard. Sulla macchina desktop di sviluppo, ho impostato JAVA_DEFAULT_OPTS=-DLOG_LEVEL=DEBUG -Xmx384m
; Sulla macchina server di produzione, i clienti impostano JAVA_DEFAULT_OPTS=-DLOG_LEVEL=INFO -Xmx1024m
. Quando gli utenti effettuano un doppio clic sul file jar su Windows, l'applicazione verrà eseguita con diversi livelli log4j e memoria massima heap.
Funziona. Almeno in Windows con Sun JRE. Anche Linux dovrebbe funzionare (http://stackoverflow.com/a/1508684/418439). Qualcuno mi faccia sapere se anche il Mac funziona. E 'un uovo di pasqua? Non è nemmeno ufficialmente documentato su http://docs.oracle.com/javase/6/docs/technotes/tools/windows/java.html. Dovrei chiedere qualche anno fa ... :( –
@CKLee, puoi trovarne una menzione nella documentazione Java 2D, https://docs.oracle.com/javase/8/docs/technotes/guides/2d /flags.html e http://docs.oracle.com/javase/7/docs/webnotes/tsg/TSG-Desktop/html/plugin.html – RealHowTo