সঠিক ম্যাভেন এনভায়রনমেন্ট ভেরিয়েবল নাম কি: MAVEN_HOME
, MVN_HOME
বা M2_HOME
?
আমি সম্পর্কে MAVEN_HOME
এবং M2_HOME
এখানে কিছু বিশদ খুঁজে পেয়েছি । তবে আমিও MVN_HOME
আশেপাশে দেখেছি ।
সঠিক ম্যাভেন এনভায়রনমেন্ট ভেরিয়েবল নাম কি: MAVEN_HOME
, MVN_HOME
বা M2_HOME
?
আমি সম্পর্কে MAVEN_HOME
এবং M2_HOME
এখানে কিছু বিশদ খুঁজে পেয়েছি । তবে আমিও MVN_HOME
আশেপাশে দেখেছি ।
উত্তর:
আমি ব্যক্তিগতভাবে সেট করতে কখনও এটি কার্যকর খুঁজে পাই নি M2_HOME
।
কী গণনা করা হয় তা আপনার cou পথের পরিবেশ। ড্যানিক্স থেকে উত্তরের অংশ হাইজ্যাকিং, আপনার যা প্রয়োজন তা হ'ল:
export PATH=/Users/xxx/sdk/apache-maven-3.0.5/bin:$PATH
mvn
স্ক্রিপ্ট নির্ণয় M2_HOME
কি এটা মূল্য জন্য যাহাই হউক না কেন আপনার জন্য।
M2_HOME
(এবং মত) মেভেন 3.5.0.0 হিসাবে ব্যবহার করা হবে না। বিশদের জন্য এমএনজি -5607 দেখুন এবং নোট প্রকাশ করুন।
এখানে আমার মাভেন সেটআপ। আপনি এটি উদাহরণ হিসাবে ব্যবহার করতে পারেন। মাভেন ব্যবহার করার জন্য আপনার আর কোনও প্রয়োজন নেই।
M2_Home মাভেন 2 এবং 3 উভয়ের জন্যই ব্যবহৃত হয়
export M2_HOME=/Users/xxx/sdk/apache-maven-3.0.5
export M2=$M2_HOME/bin
export MAVEN_OPTS="-Xmx1048m -Xms256m -XX:MaxPermSize=312M"
export PATH=$M2:$PATH
মাভেনহোম মেভেন 1 এর জন্য ব্যবহৃত হয় এবং M2_Home maven 2 সনাক্ত করতে ব্যবহৃত হয় । দুটি পৃথক_হৈম ভেরিয়েবল থাকার অর্থ দুটি একই মেশিনে চালানো সম্ভব। এবং যদি আপনি পুরানো mvn.cmd স্ক্রিপ্টগুলি পরীক্ষা করেন তবে তাদের মতো কিছু রয়েছে,
@REM ----------------------------------------------------------------------------
@REM Maven2 Start Up Batch script
@REM
@REM Required ENV vars:
@REM JAVA_HOME - location of a JDK home dir
@REM
@REM Optional ENV vars
@REM M2_HOME - location of maven2's installed home dir
@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending
@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
@REM e.g. to debug Maven itself, use
@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
@REM ----------------------------------------------------------------------------
ওটা দেখ @REM M2_HOME - location of maven2's installed home dir
যাইহোক, এই প্যাটার্নটির ব্যবহার এখন ডকুমেন্টেশন অনুসারে maven 3.5 এর সাথে অবমূল্যায়ন করা হয়েছে ।
বিভিন্ন মাভেন সংস্করণ ইনস্টল করা এবং জিনিসগুলি সহজ করার জন্য M2_Home ব্যবহার করার ক্ষেত্রে সমস্যাগুলির ভিত্তিতে, M2_Home- এর ব্যবহার সরিয়ে ফেলা হয়েছে এবং আরও কোনও MNG-5823 , MNG-5836 , MNG-5607 সমর্থিত নয়
সুতরাং এখন mvn.cmd চেহারা,
@REM -----------------------------------------------------------------------------
@REM Apache Maven Startup Script
@REM
@REM Environment Variable Prerequisites
@REM
@REM JAVA_HOME Must point at your Java Development Kit installation.
@REM MAVEN_BATCH_ECHO (Optional) Set to 'on' to enable the echoing of the batch commands.
@REM MAVEN_BATCH_PAUSE (Optional) set to 'on' to wait for a key stroke before ending.
@REM MAVEN_OPTS (Optional) Java runtime options used when Maven is executed.
@REM MAVEN_SKIP_RC (Optional) Flag to disable loading of mavenrc files.
@REM -----------------------------------------------------------------------------
সুতরাং আপনার যা দরকার তা হ'ল জ্যাভা_হোমকে সঠিকভাবে সেট করা। হিসাবে (12/29/2017 হিসাবে) নতুন ইনস্টলেশন গাইড , শুধু পাথ ভেরিয়েবলে ম্যাভেন bin ডিরেক্টরীতে পথ যোগ করুন। এটা কৌতুক করা উচিৎ।
প্রাক্তন: export PATH=/opt/apache-maven-3.5.2/bin:$PATH
আমি চকোলেটির সেট হিসাবে এই হোঁচট খেয়েছি M2_HOME
। আমি সনাক্ত করতে চেয়েছিলামsettings.xml
।
জন্য বর্তমান উপায় settings.xml
হল যেতে হয় %USERPROFILE%
। সেখানে একটি ডিরেক্টরি .m2
রয়েছে, যেখানে এটি সন্ধান করেsettings.xml
।
কখনও ব্যবহার করবেন না M2_HOME
। এটি অ্যাপাচি মাভেন 3.5.0 থেকে অসমর্থিত।
বিশদ:
M2_HOME
বিভিন্ন মাভেন সংস্করণ ইনস্টল করা এবং জিনিসগুলি সহজ করার জন্য সম্পর্কিত সমস্যার ভিত্তিতে এর ব্যবহারM2_HOME
সরিয়ে ফেলা হয়েছে এবং আরও কোনও এমএনজি -৮৮৩৩ , এমএনজি -৮363636 , এমএনজি -5607 সমর্থন করা নেই ।উইন্ডোজ ব্যবহারকারীদের জন্য গুরুত্বপূর্ণ পরিবর্তন: এর ব্যবহারটি MNG-6001
%HOME%
দ্বারা প্রতিস্থাপিত হয়েছে%USERPROFILE%
সূত্র: https://maven.apache.org/docs/3.5.0/release-notes.html#overview-about-the- बदल
$M2_HOME
উদাহরণস্বরূপ, ইনস্টল করতে কখনও কখনও ব্যবহৃত হয় Takari Extensions for Apache Maven
$M2_HOME
মান সন্ধান করার একটি উপায় হ'ল অনুসন্ধান করা mvn
:
sudo find / -name "mvn" 2>/dev/null
এবং, সম্ভবত এটি হবে: /opt/maven/
M2_HOME
টাকারিতে কিছু পড়ে। এটি চালানো শেল কমান্ডের উদাহরণগুলিতে কেবল একটি স্থানধারক ভেরিয়েবল ব্যবহার করছে।
আমি নিম্নলিখিতটি দিয়ে একই সমস্যাটি সমাধান করেছি:
export M2_HOME=/usr/share/maven
আমাদের কাছে এম 2_হোম, মাভেনহোম, এম 3_হোম সবই বাজারে উপলভ্য রয়েছে
আগে এম 2_হোম একমাত্র পরিবেশগত পরিবর্তনশীল যা সমস্ত স্ট্যান্ডার্ড হিসাবে ব্যবহার করে।
তবে, সর্বশেষ প্রকাশের কারণে MAVEN_Home স্ট্যান্ডার্ড হিসাবে এসেছে তবে কিছু পুরানো সরঞ্জাম এখনও কেবলমাত্র M2_Home সন্ধান করার চেষ্টা করছে
যাতে আমাদের পুরানো এবং নতুন সরঞ্জামগুলি টিকিয়ে রাখতে M2_Home, MAVEN_Home উভয় হওয়া উচিত।
M2_Home উভয়ের জন্যও ব্যবহার করা যেতে পারে
M2_HOME
যে অতীতে স্থাপনের ফলে সবসময়ই অদ্ভুত ত্রুটি দেখা যায়, বেশিরভাগNoClassDefFoundError
কারণ প্যাথএইচ- এmvn
কমান্ডটি পাওয়া যেত, তবে এর সাথে পাওয়া গেল আরও একটি মাভেন সংস্করণM2_HOME
। আমার জীবনটি আরও ভাল হয়েছে যেহেতু আমি সেই এনভির ভেরিটিং সেট করা বন্ধ করে দিয়েছি এবং কেবলমাত্র.../bin/mvn
ডিরেক্টরিতে ডিরেক্টর যুক্ত করতেPATH
এবং মেভেনকে অটোডেটেক্ট জিনিসগুলিতে নির্ভর করতে পারি ।