Ein paar Ideen ... Erstens, nur um die Lesbarkeit zu verbessern, ist dies Ihr PFAD
PATH = / usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin: / usr / games
Dies sind Ihre Umgebungsvariablen:
export JAVA_HOME = / usr / local / jdk1.6.25 /
export M2_HOME = / usr / local / apache-maven / apache-maven-3.0.3
export M2 = $ M2_HOME / bin
export PATH = $ M2: $ PATH
Beachten Sie, dass "Java" (das Programm) $JAVA_HOME/bin
nicht vorhanden ist $JAVA_HOME
. Das wird ein wenig Verwirrung stiften, wenn im PATH der Shell ein anderes 'Java' gefunden wird. Zum Beispiel...
$ Typ Java
Java ist / usr / bin / java
Ändern Sie einfach Ihren PFAD:
$ export PATH = $ JAVA_HOME / bin: $ PATH
$ Typ Java
... sollte $ JAVA_HOME / bin / java sein ...
Aber ich denke nicht, dass das das Problem ist. Aus dem MVN Shell Script Launcher,
if [-z "$ JAVA_HOME"]; dann
echo "Warnung: Die Umgebungsvariable JAVA_HOME ist nicht festgelegt."
fi
Dies würde bedeuten, dass die Variable wirklich nicht gesetzt ist - nicht nur auf einen falschen Wert gesetzt. Vielleicht ist dies der wichtigste Hinweis:
[mein java_home ...] obwohl es in meiner Umgebungsdatei existiert?
Vielleicht kann du / geändert JAVA_HOME
zu .bashrc
oder .profile
, und dann in der gleichen Shell versuchte zu laufen mvn -v
?? In diesem Fall werden diese Werte erst erfasst, wenn Sie die Datei als Quelle (z. B. . ~/.bashrc
) oder eine neue Anmeldeshell ( bash -l
) erstellen , damit diese Umgebungsvariablen festgelegt (oder zurückgesetzt) werden.
(Auch ... es ist nur eine Ansichtssache, aber in Ihrem PATH
Fall würde ich den Standard /usr/bin
(und /usr/sbin
und /bin
) vor einem /usr/local/bin
oder /opt/bin
(usw.) belassen, nur um zu vermeiden, dass Rouge-Programme vor Ort Vorrang vor den Standardprogrammen haben ... die Verwendung von so etwas alternatives
wäre vorzuziehen, um die Standardversionen von Standardanwendungen zu überschreiben.)
/etc/environment
Wenn Sie die Datei missbrauchen , sollte sie im conf-Format geschrieben sein (siehe die Seite EnvironmentVariables auf help.ubuntu.com ), da keine Shell-Erweiterung verfügbar ist - Ihre Variablen werden niemals ausgewertet.