উইন্ডোতে "ইনহেরিটিং" পাথ ভেরিয়েবল


1

উইন্ডোজ 7 এ আমি দুটি ব্যবহারকারীর পরিবেশের ভেরিয়েবল যুক্ত করেছি:

M2_HOME   %PROGRAMFILES%\Apache\apache-maven-3.0.2
M2        %M2_HOME%\bin

আমার মাথায়, এই দু'জনেরই কাজ করা উচিত, তবে কেবল প্রথম কারণে কোনও কারণে এটি করা উচিত। আমার অর্থ হ'ল আমি কমান্ড প্রম্পটে টাইপ করতে পারি

cd %M2_HOME%

যা ভাল কাজ করে, কিন্তু

cd %M2%

যা হয় না। এখানে কি হচ্ছে?


রিবুট করুন।
Synetech

উত্তর:


2

উইন্ডোজ in এ নেস্টেড এনভায়রনমেন্ট ভেরিয়েবলের সাথে একটি বাগ রয়েছে বলে মনে হয় (সম্ভবত অন্যান্য সংস্করণগুলিও, আমি নিশ্চিত নই) যেখানে শীর্ষ স্তরের ভেরিয়েবলের নাম যদি নেস্টেড ভেরিয়েবলের বর্ণমালার নামে আসে তবে এটি প্রসারিত হবে না ।

আপনার ক্ষেত্রে, বর্ণের অনুসারে বাছাই M2করার সময় শীর্ষ স্তরের ভেরিয়েবল নেস্টেড ভেরিয়েবলের আগে আসে comes M2_HOMEআপনি যদি (উদাঃ ) এর M2পরে আসা কিছুতে পরিবর্তন করেন তবে আপনি দেখতে পাবেন যে এটি উদ্দেশ্য হিসাবে কাজ করে।M2_HOMEM3


এখন এটি বিরক্তিকর ... অনুমান করুন যে কারণটি এটি% M2% কেও পথে যুক্ত করতে কাজ করে না। এই পরিবেশের ভেরিয়েবলের ক্রম নির্দিষ্ট করার কোনও উপায়?
সুইভিশ

সমস্যার ঘেঁটে M2যাওয়ার একমাত্র উপায় হ'ল আমি যা বলেছিলাম তা করা এবং M3এমন কিছু বা এমন কিছুর নামকরণ করা যেমন কিছু M2_PATHকাজ করে - যতক্ষণ না এটি এমন কিছু হয় যা M2_HOMEবর্ণানুক্রমিকভাবে তুলনা করার পরে আসে । বিকল্পভাবে, আপনি সম্পাদনা করতে M2_HOMEএবং ম্যানুয়ালি প্রোগ্রাম ফাইল ডিরেক্টরি ব্যবহারের পরিবর্তে প্রবেশ %PROGRAMFILES%করতে পারেন, কারণ আপনি কেবল দুটি স্তরের বেশি বাসা বেঁধে দিলে বাগটি সম্ভবত উপস্থিত হয়।
হিরোহতার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.