settings.xml-এ Maven প্রক্সি ব্যতিক্রম
উল্লম্ব দাগ দিয়ে আলাদা করা nonProxyHosts ফর্ম্যাটে অভ্যন্তরীণ হোস্ট বাদ দিয়ে Maven ফরওয়ার্ড প্রক্সি কনফিগার করুন।
শেলের NO_PROXY ভেরিয়েবল থেকে কপি করা ব্যতিক্রম Maven-এ স্বয়ংক্রিয়ভাবে বৈধ নয়। Maven-এর nonProxyHosts তালিকায় এন্ট্রিগুলোর মাঝে উল্লম্ব দাগ থাকে, পরিবেশ ভেরিয়েবলে প্রচলিত কমা-বিভাজিত ফর্ম নয়।
লক্ষ্য করা ব্যবহারকারী সেটিংসে একটি প্রক্সি এন্ট্রি এমন হতে পারে:
<settings>
<proxies>
<proxy>
<id>outbound-proxy</id>
<active>true</active>
<protocol>http</protocol>
<host>203.0.113.10</host>
<port>8080</port>
<nonProxyHosts>localhost|*.example.internal</nonProxyHosts>
</proxy>
</proxies>
</settings>
এটি proxies অংশ ঘিরে সেটিংসের একটি উদাহরণ। সম্পর্কহীন mirrors, servers ও profiles প্রতিস্থাপন না করে বিদ্যমান সেটিংস ফাইলে এটি মিশিয়ে নিন। প্রকৃত প্রক্সি ঠিকানা ব্যবহার করুন। রিপোজিটরি অনুরোধে পাবলিক HTTP প্রক্সি অনুমোদিত হলে HTTP প্রক্সি তালিকা সম্ভাব্য হোস্ট ও পোর্টের জোড়া দেয়।
রিপোজিটরি হোস্ট মিলিয়ে নিন
Maven যে হোস্টনামগুলোতে সত্যিই যোগাযোগ করে, তাদের ওপর ব্যতিক্রম প্রয়োগ করুন। অভ্যন্তরীণ রিপোজিটরি URL এবং পাবলিক ডাউনলোড হোস্টনামের জন্য আলাদা রুট লাগতে পারে। হোস্ট প্যাটার্নের জন্য নির্ধারিত ঘরে পথসহ পুরো রিপোজিটরি URL দেবেন না।
ওয়াইল্ডকার্ড সমর্থিত, কিন্তু একটি ব্যর্থতা দূর করার জন্যই খুব বিস্তৃত প্যাটার্ন ব্যবহার করবেন না। পরিবর্তনের পর কাঙ্ক্ষিত অভ্যন্তরীণ নাম এবং একটি পাবলিক রিপোজিটরি আলাদা করে পরীক্ষা করুন।
আসলেই ব্যবহৃত সেটিংস খুঁজুন
Maven বৈশ্বিক ও ব্যবহারকারী সেটিংস একত্র করতে পারে, আর কোনো invocation বিকল্প সেটিংস ফাইল বেছে নিতে পারে। IDE টার্মিনালের থেকে আলাদা Maven ইনস্টলেশন বা কনফিগারেশন ব্যবহার করতে পারে। ব্যর্থ invocation যে ফাইল কখনও পড়ে না, সেটি সম্পাদনা করলে তার রুট বদলাবে না।
প্রক্সির সক্রিয়তার ফ্ল্যাগও গুরুত্বপূর্ণ। নিষ্ক্রিয় এন্ট্রিতে হোস্ট ও পোর্ট ঠিক থাকলেও Maven সেটি বেছে নেবে—এমন প্রমাণ হয় না।
দুটি সার্ভার আলাদা রাখুন
পরিষেবা চাইলে প্রক্সির শংসাপত্র প্রক্সি এন্ট্রিতে রাখুন। ব্যক্তিগত আর্টিফ্যাক্ট রিপোজিটরির শংসাপত্র সংশ্লিষ্ট server কনফিগারেশনে রাখুন। রিপোজিটরির টোকেন দেওয়া প্রক্সি প্রমাণীকরণ চ্যালেঞ্জের উত্তর নয়।
অনুরোধ ব্যর্থ হলে নির্বাচিত রিপোজিটরি URL, উত্তর বা সংযোগের ত্রুটি এবং কার্যকর সেটিংসের উৎস লিখে রাখুন। আগে ঠিক করুন অনুরোধটি প্রক্সি দিয়ে না সরাসরি যাওয়ার কথা ছিল; তালিকার সিনট্যাক্স ও endpoint একসঙ্গে বদলালে ফল বোঝা কঠিন হয়।