আমি বেশ কিছুদিনের জন্য log4j ব্যবহার করছি এখন এবং আমি সাধারণত log4j.xml উপরের এই ব্যবহার (সম্ভবত মাত্র অনেকে মত এবং Google অনুযায়ী এই হল উপায় এটা করতে):
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
স্পষ্টতই এটি কাজ করছে, তবে এক্সিএমএল এবং সমস্ত লেখার জন্য Elpipse এর প্রসঙ্গ-সংবেদনশীল সহায়তা সরবরাহ করে না। তদ্ব্যতীত, এটি সর্বদা একটি সতর্কতা দেখায় যে এটি এটির সন্ধান করে না log4j.dtd
। এখন আমি কীভাবে এটি ঠিক করব তা আগ্রহী।
আমি কয়েকটি জিনিস এবং এই কাজগুলি চেষ্টা করেছিলাম:
<!DOCTYPE log4j:configuration SYSTEM "jar:file:/path/.m2/repository/log4j/log4j/1.2.14/log4j-1.2.14.jar!/org/apache/log4j/xml/log4j.dtd">
<!DOCTYPE log4j:configuration SYSTEM "http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd">
উপরে থেকে আপনি দেখতে পাচ্ছেন আমরা মাভেন ব্যবহার করছি। অতএব, আমি এটি চেষ্টা করেছিলাম, তবে এটি ব্যর্থ হয়েছে:
<!DOCTYPE log4j:configuration SYSTEM "jar:file:${M2_REPO}/log4j/log4j/1.2.14/log4j-1.2.14.jar!/org/apache/log4j/xml/log4j.dtd">
ক্লাসপাথ ভেরিয়েবলগুলি কীভাবে মোকাবেলা করতে হবে তা গ্রহন সাধারণত জানে তবে কেন এই কাজ হয় না? আমি জানি যে রানটাইম চলাকালীন রেফারেন্সটি কাজ করবে না, তবে একটিও সরল করে না log4j.dtd
(যদি আমি ভুল নাও করি), যাতে সমস্যা হওয়া উচিত নয়।
কেউ দয়া করে এ বিষয়ে আলোকপাত করতে পারেন?