क्या जावा में एक डिफ़ॉल्ट सिस्टम एनवायरनमेंट वेरिएबल है जिसे हम इसे सेट करते समय हमेशा पढ़ा/जोड़ दिया जाएगा? CATALINA_OTPS
/JAVA_OPTS
आदि केवल TOMCAT/JBoss आदिजावा सिस्टम पर्यावरण वैरिएबल
- मैं जावा प्रणाली गुण के माध्यम से यह स्थापित करने के लिए (जो -Dprop1 = मान 1 -Dprop2 2 = मान के माध्यम से में पारित हो जाता है) के रूप में यह खोल शामिल नहीं करना चाहता/बैच के लिए लगता है स्क्रिप्ट।
- इसे ओएस में काम करना चाहिए, जैसे कि विंडोज़ में डबल क्लिक जार फ़ाइल।
- इसे विभिन्न जेआरई (सूर्य, आईबीएम, ओपनजेडीके इत्यादि) में काम करना चाहिए।
- इसमें अतिरिक्त कोडिंग शामिल नहीं होनी चाहिए।
- यह अधिकांश लाइब्रेरी कॉन्फ़िगरेशन फ़ाइल में काम करना चाहिए, जैसे log4j स्तर $ {LOG_LEVEL} सेट करना।
अद्यतन: जोड़ा गया आइटम # 4 और 5 के शीर्षक से निकालें ओएस मेरे सवाल का स्पष्ट करने के।
अद्यतन 2 धारणा के जवाब को देखने के बाद, यह मेरी आइटम 2 की तरह लगता है और 3 System.getenv
के माध्यम से प्राप्त किया जा सकता। आइटम 4 और 5 कैसे प्राप्त करें?
यहां परिदृश्य का उदाहरण दिया गया है: कल्पना करें कि अब JAVA_DEFAULT_OPTS
एक पर्यावरण चर है जो जावा द्वारा पढ़ा जाएगा क्योंकि यह अब मानक बन गया है। विकास डेस्कटॉप मशीन पर, मैंने JAVA_DEFAULT_OPTS=-DLOG_LEVEL=DEBUG -Xmx384m
सेट किया है; उत्पादन सर्वर मशीन पर, ग्राहक JAVA_DEFAULT_OPTS=-DLOG_LEVEL=INFO -Xmx1024m
सेट करते हैं। जब मैं/उपयोगकर्ता विंडोज़ पर जार फ़ाइल को डबल क्लिक करते हैं, तो एप्लीकेशन अलग-अलग लॉग 4j स्तर और अधिकतम मेमोरी ढेर आकार होगा।
- os.name
- os.arch
- os.version
सभी:
यह काम करता है। कम से कम विंडोज़ में सूर्य जेआरई के साथ। लिनक्स को भी काम करना चाहिए (http://stackoverflow.com/a/1508684/418439)। मैक भी काम करता है तो कोई मुझे बताएगा। क्या यह एक ईस्टर अंडे है? यह आधिकारिक तौर पर http://docs.oracle.com/javase/6/docs/technotes/tools/windows/java.html पर भी दस्तावेज नहीं किया गया है। मुझे इस कुछ साल पहले पूछना चाहिए ... :( –
@CKLee, आप जावा 2 डी दस्तावेज में इसका उल्लेख पा सकते हैं, https://docs.oracle.com/javase/8/docs/technotes/guides/2d /flags.html और http://docs.oracle.com/javase/7/docs/webnotes/tsg/TSG-Desktop/html/plugin.html – RealHowTo