Ich würde gerne wissen, ob es möglich ist, JAVA_HOME als Parameter an die mvn-Befehlszeile zu übergeben. Ich habe fast überall gesucht, konnte aber keine Antwort darauf finden.
Ich weiß, dass wir JAVA_HOME mit Export setzen können, aber ich muss es als Parameter übergeben, wenn das möglich ist. Etwas wie:
%Vor%Nein, nicht direkt, aber wenn ich mvn.bat auf meiner Maschine anschaue, sehe ich diesen vielversprechenden Ausschnitt:
%Vor%, so dass Sie jede Variable, die Sie mögen, in einer mavenrc_pre-Skriptdatei überschreiben können, obwohl mir klar ist, dass Sie damit Java Home von der Kommandozeile nicht überschreiben können. Im schlimmsten Fall ist mvn eine einfache Skriptdatei und Sie können die Option hinzufügen. Beachten Sie außerdem, dass das einfache Überschreiben von JAVA_HOME möglicherweise nicht immer zu den erwarteten Ergebnissen führt, da sich auf vielen Systemen JAVA_HOME \ bin auf dem Pfad befindet. Das bedeutet, dass selbst wenn Sie es überschreiben, der vorherige jvm immer noch auf dem Pfad ist, was zu unerwarteten Ergebnissen führen könnte.
Ein weiterer Hacky-Weg, den ich gemacht habe: (Ich habe die meisten meiner Projekte auf Java 7, aber eine Handvoll auf Java 8)
1) Fügen Sie eine neue env-Variable JAVA8_HOME zu Ihrer .zshrc (oder ähnlich)
hinzu2) Kopieren Sie die ausführbare Datei 'mvn' und nennen Sie sie 'mvn8'
3) Ersetzen Sie 'JAVA_HOME' durch 'JAVA8_HOME' in 'mvn8'
Jetzt sollte mvn8 clean install
einfach funktionieren.
Tags und Links java maven command-line