Scopo delle variabili JAVA HOME, M2 e M2 HOME
Di cosa ho bisogno JAVA_HOME
, M2
, e M2_HOME
variabili di ambiente per se i percorsi che dovrebbero andare lì sono già aggiunti alla mia variabile PATH?
4 answers
JAVA_HOME
dovrebbe fare riferimento alla directory in cui è installato Java che si desidera utilizzare. Questa variabile è spesso utilizzata da vari script, quindi è consigliabile definirla. JAVA_HOME
non deve essere aggiunto a PATH
. È necessario aggiungere JAVA_HOME/bin
per poter eseguire comandi da questa directory senza specificare il percorso concreto.
M2_HOME
è una casa di Maven. È usato dallo script mvn
(o mvn.bat
su Windows).
I percorsi di casa (JAVA_HOME
, M2_HOME
) non sono obbligatori ma buoni da avere. Uno dei vantaggi è:
Ti aiuta a apportare modifiche in un unico posto piuttosto che cercare nella variabile PATH
quando installi la prossima versione di Java o Maven. Ad esempio la variabile di ambiente JAVA_HOME
di seguito è un posto che devo cambiare quando lo aggiorno a Java Development Kit 1.8.
Penso che tu non capisca un concetto di variabile d'ambiente. Per iniziare, leggi qui - > http://en.wikipedia.org/wiki/Environment_variable
PATH
è una variabile d'ambiente ben nota in molti sistemi operativi (o shell). E il suo significato è che se si digita un nome di programma senza percorso completo, il sistema operativo (o la shell) proverà a cercare tutte le directory specificate nella variabile PATH
.
Altri programmi hanno dipendenze diverse dall'ambiente. Alcuni di essi specificano quali variabili di ambiente hanno bisogno per funzionare correttamente.
JAVA_HOME
viene utilizzato da molte applicazioni basate su Java per definire il luogo di installazione di Java Runtime Environment (JRE).
M2_HOME
è usato da Maven, e di nuovo dice al programma dove trovare l'installazione di Maven.
PATH
non è adatto a questo scopo, perché può contenere molte directory non correlate a Java o Maven.
La variabile PATH viene utilizzata per trovare applicazioni (eseguibili e script) e DLL su Windows. Se si digita "mvn", il PERCORSO viene utilizzato per individuare un eseguibile o uno script con quel nome. Solo perché lo script si trova in una posizione, tuttavia, non significa che l'applicazione sia installata in quella directory. L'esempio più semplice da descrivere è quello che esiste su UNIX. Potresti avere un collegamento simbolico da / usr / local / bin / mvn alla posizione in cui maven è effettivamente installato. Altri esempi / motivi potrebbero essere forniti.
Le variabili di ambiente vengono utilizzate dall'applicazione per sapere dove cercare altre risorse che potrebbero essere necessarie all'applicazione.
Ad esempio, JAVA_HOME punta alla directory in cui è possibile trovare il JDK. Quando JAVA viene eseguito, tale applicazione sa che altre risorse possono essere trovate relative alla directory JAVA_HOME.
Questo consente l'applicazione per esempio C:\Windows\System32\java esiste in una directory ma l'installazione di JDK deve essere situato da qualche altra parte.
Lo stesso vale per la directory M2_HOME che punta alla directory superiore in cui MAVEN è "installato" (o decompresso).
La directory M2 specifica all'applicazione maven (mvn) dove trovare i repository maven necessari. Il valore predefinito (su UNIX) è HOME HOME/.m2, ma potresti non volere il tuo repository lì in modo da poter specificare un'altra posizione usando la variabile d'ambiente M2 e maven userà quella posizione invece di quella predefinita.