আপনারা যারা Eclipse থেকে IntelliJ বা এখানকার অন্য উপায়ে স্থানান্তরিত হন তাদের কাছে সম্পত্তি ফাইল বা অন্যান্য সংস্থান ফাইলগুলির সাথে কাজ করার সময় একটি পরামর্শ।
এটির ম্যাডেনিং (এটি জানতে আমার পুরো সন্ধ্যা ব্যয় করতে হবে) তবে আইডিইর কাজ দুটি ভিন্ন যখন আপনি আপনার আইডিই থেকে স্থানীয়ভাবে চালাতে চান বা ডিবাগিংয়ের সময় রিসোর্স / রুপটি ফাইলগুলি সন্ধান করার ক্ষেত্রে আসে। (একটি। জাকারে প্যাকেজিংও বেশ আলাদা, তবে এটি ডকুমেন্টেড আরও ভাল)
ধরুন আপনার কোডে আপনার মতো কোনও সম্পর্কিত পাথ রেফারেল রয়েছে:
new FileInputStream("xxxx.properties");
(আপনি যদি আপনার জেআর পাশাপাশি প্যাকেজ করতে চান না এমন env নির্দিষ্ট। প্রপার্টি ফাইলগুলির সাথে কাজ করেন তবে এটি সুবিধাজনক)
INTELLIJ
(আমি 13.1 ব্যবহার করি তবে আরও সংস্করণের জন্য বৈধ হতে পারে)
Xxxx.properties ফাইলটি ইন্টেলিজজে রানটাইমের সময় বাছাইয়ের জন্য প্রকল্পের মূল প্যারেন্ট ডায়ারে থাকা দরকার। (প্রকল্পের মূলটি যেখানে / এসসিআর ফোল্ডারটিতে থাকে)
গ্রহণ
Xxxx.properties ফাইলটি প্রকল্পের রুটে নিজেই উপস্থিত থাকলে গ্রহটি ঠিক খুশি হয়।
সুতরাং ইন্টেলিজ আশা করে। প্রপার্টি ফাইলগুলি 1 স্তরের উচ্চতর হবে তখনই যখন এটির মতো রেফারেন্স হবে তখন গ্রহনটি হবে !!
আপনার রফতানিত জজারে আপনার যখন একই লাইন কোডের (নতুন ফাইলআইপুটস্ট্রিম ("xxxx.properties")) থাকে তখন আপনার কোডটি কার্যকর করতে হয় এমনভাবে এটিও প্রভাব ফেলে। আপনি যখন চটপটে থাকতে চান এবং আপনার জারের সাথে .properties ফাইলটি প্যাকেজ করতে চান না তখন কমান্ড লাইন থেকে .properties ফাইলটি সঠিকভাবে উল্লেখ করতে আপনাকে নীচের মতো জারটি চালাতে হবে:
ইনটেলিজ এক্সপোর্টেড জার
java -cp "/path/to_properties_file/:/path/to_jar/some.jar" com.bla.blabla.ClassContainingMainMethod
ECLIPSE এক্সপোর্টেড জার
java -jar some.jar
যেখানে Eclipse এক্সপোর্ট এক্সিকিউটেবল জার কেবলমাত্র রেফারেন্সড। প্রপার্টি ফাইলটি একই জায়গায় যেখানে .jar ফাইলের প্রত্যাশা করবে