नहीं, मैं log4j.properties
में अपने src/main/resources
में शामिल नहीं होगा यदि यह सिर्फ एक पुस्तकालय है - लोग आपकी लाइब्रेरी का उपयोग करेंगे, और लोगों को यह कॉन्फ़िगर करना होगा कि इसे कैसे लॉग करना चाहिए।
लेकिन एक और समस्या है: यदि आप इसे अपने जार में डाल देते हैं, तो दूसरों के पास उनके क्लासपाथ में log4j भी होगा। इसलिए, अगर वे log4j (जो वे करेंगे) के लिए एक कस्टम कॉन्फ़िगरेशन चाहते हैं, तो क्लासलोडर पहली फ़ाइल चुन सकता है जो इसे मिल सकता है।
इसके अलावा, यदि आपके पास लाइब्रेरी है, तो मैं इसके बजाय slf4j
का उपयोग करने का सुझाव दूंगा, इसलिए आपके उपयोगकर्ता अपना पसंदीदा लॉगिंग फ्रेमवर्क चुन सकते हैं।
purpouses परीक्षण के लिए, src/test/resources
में log4j शामिल करना ठीक है।
यह सब सच है, और एप्लिकेशन परिनियोजन पर भी लागू होता है। इसे * लाइब्रेरी * प्रोजेक्ट में नहीं डालने के अतिरिक्त कारण हैं - अर्थात् आप आमतौर पर उस संदर्भ को नहीं जानते जहां इसका उपयोग किया जाएगा और क्लासपाथ को प्रभावित करने वाली कॉन्फ़िगरेशन, संभावित मुद्दों का कारण बनती है। – eis
विफलता के दौरान सर्वर पर डीबगिंग सक्षम करने की क्षमता एक lifesaver है। जितना हम परीक्षण करते हैं, यह अभी भी उन मुद्दों के खिलाफ गार्ड करता है जिन्हें हमने परीक्षण करने के लिए सोचा था। आगे बढ़ने वाले बेहतर परीक्षणों में फ़ीड के बारे में अतिरिक्त जानकारी प्राप्त करने की क्षमता रखने के लिए। – Gus