Java Variable D'Environnement Système

Java ont par défaut une Variable d'Environnement Système qui sera toujours lu/joints lorsque nous la définir? CATALINA_OTPS/JAVA_OPTS etc semble que pour TOMCAT/JBOSS, etc.

  1. Je ne veux pas le régler par le biais de propriétés système Java (qui est passé dans la via -Dprop1=valeur1 -Dprop2=valeur2), car elle implique un shell/script batch.
  2. Il doit travailler à travers les OS, comme le double cliquez sur le fichier jar dans Windows.
  3. Il doit travailler à travers les différents Jre (Sun, IBM, OpenJDK, etc).
  4. Il ne devrait pas nécessiter de codage supplémentaire.
  5. Il devrait fonctionner dans la plupart des bibliothèques fichier de configuration, comme la mise en log4j
    niveau ${LOG_LEVEL}.

Mise à jour: Ajout de l'élément n ° 4 et 5. Enlever les OS de titre à ma question plus claire.

Mise à jour 2: Après avoir regardé la Perception de la réponse, il semble que ma rubrique 2 et 3 peuvent être obtenus via System.getenv. Comment atteindre le point 4 et 5?

Ici est un exemple de scénario:
Imaginez maintenant JAVA_DEFAULT_OPTS est une variable d'environnement qui sera lu par le Java comme il est maintenant devenu la norme. Sur le développement ordinateur de bureau, j'ai mis JAVA_DEFAULT_OPTS=-DLOG_LEVEL=DEBUG -Xmx384m; Sur le serveur de production de la machine, les clients de définir JAVA_DEFAULT_OPTS=-DLOG_LEVEL=INFO -Xmx1024m. Quand j'/utilisateurs double-cliquez sur le fichier jar sur Windows, l'application s'exécute différentes log4j niveau et max de la mémoire de la taille du segment.