Hinweis: Bei der ersten Veröffentlichung habe ich versucht, maven2 zu installieren. Da die Hauptantwort für maven3 gilt, habe ich den Titel aktualisiert. Der Rest der Frage bleibt so, wie sie ursprünglich gepostet wurde.
Ich versuche, maven2 mit dem Befehl auf einer Redhat-Linux-Box zu installieren
yum install maven2
aber yum scheint maven2 nicht zu finden.
No package maven2 available
Ich bin auf andere Beiträge zu diesem Thema gestoßen, aber die Antwort auf den folgenden Beitrag schlägt vor, Repos hinzuzufügen. Ich füge die besagten Repos hinzu, stoße aber nach dem Hinzufügen auf Fehler.
Wie installiere ich Maven in Red Hat Enterprise Linux 6?
Ich kann auf dieses Feld nur über die Befehlszeile zugreifen, daher fällt es mir schwer, maven von der Website herunterzuladen.
Gehen Sie zu mirror.olnevhost.net/pub/Apache/maven/binaries/ und überprüfen Sie die aktuelle tar.gz-Datei
Angenommen, es sei z.B. Apache-maven-3.2.1-bin.tar.gz von der Befehlszeile aus; Sie sollten einfach in der Lage sein:
wget http://mirror.olnevhost.net/pub/Apache/maven/binaries/Apache-maven-3.2.1-bin.tar.gz
Und dann fahren Sie mit der Installation fort.
UPDATE: Hinzufügen vollständiger Anweisungen (kopiert aus dem Kommentar unten)
führen Sie die folgenden Schritte aus, um den Teer zu extrahieren:
tar xvf Apache-maven-3.2.1-bin.tar.gz
Als nächstes fügen Sie die Env-Variablen hinzu wie
export M2_HOME=/usr/local/Apache-maven/Apache-maven-3.2.1
export M2=$M2_HOME/bin
export PATH=$M2:$PATH
Überprüfen
mvn -version
Ich habe folgendes Skript gemacht:
#!/bin/bash
# Target installation location
MAVEN_HOME="/your/path/here"
# Link to binary tar.gz archive
# See https://maven.Apache.org/download.cgi?html_a_name#Files
MAVEN_BINARY_TAR_GZ_ARCHIVE="http://www.trieuvan.com/Apache/maven/maven-3/3.3.9/binaries/Apache-maven-3.3.9-bin.tar.gz"
# Configuration parameters used to start up the JVM running Maven, i.e. "-Xms256m -Xmx512m"
# See https://maven.Apache.org/configure.html
MAVEN_OPTS="" # Optional (not needed)
if [[ ! -d $MAVEN_HOME ]]; then
# Create nonexistent subdirectories recursively
mkdir -p $MAVEN_HOME
# Curl location of tar.gz archive & extract without first directory
curl -L $MAVEN_BINARY_TAR_GZ_ARCHIVE | tar -xzf - -C $MAVEN_HOME --strip 1
# Creating a symbolic/soft link to Maven in the primary directory of executable commands on the system
ln -s $MAVEN_HOME/bin/mvn /usr/bin/mvn
# Permanently set environmental variable (if not null)
if [[ -n $MAVEN_OPTS ]]; then
echo "export MAVEN_OPTS=$MAVEN_OPTS" >> ~/.bashrc
fi
# Using MAVEN_HOME, MVN_HOME, or M2 as your env var is irrelevant, what counts
# is your $PATH environment.
# See http://stackoverflow.com/questions/26609922/maven-home-mvn-home-or-m2-home
echo "export PATH=$MAVEN_HOME/bin:$PATH" >> ~/.bashrc
else
# Do nothing if target installation directory already exists
echo "'$MAVEN_HOME' already exists, please uninstall existing maven first."
fi
Ziemlich viel, was andere sagten, aber "~/.bash_profile" und Schritt für Schritt (für Anfänger):
cd ~ && mkdir installed-packages
Sudo yum install -y wget
cd ~/installed-packages
wget http://www-eu.Apache.org/dist/maven/maven-3/3.5.0/binaries/Apache-maven-3.5.0-bin.tar.gz
tar -xvf Apache-maven-3.5.0-bin.tar.gz
ln -s ~/installed-packages/Apache-maven-3.5.0 /usr/local/Apache-maven
~/.bash_profile
(Hier werden häufig Umgebungsvariablen gespeichert): vi ~/.bash_profile
MVN_HOME=/usr/local/Apache-maven
(tun Sie dies, bevor die PATH-Variable definiert ist)vi
-Tool nicht kennen: Drücken Sie i
, um den Einfügemodus zu aktivieren.):$MVN_HOME:$MVN_HOME/bin
vi
-Tool nicht kennen: Drücken Sie die esc
-Taste, um den Einfügemodus zu beenden, und :wq!
, um die Datei zu speichern und zu beenden.)source ~/.bash_profile
mvn --help
Maven in Amazon Linux/redhat installieren
-> Sudo wget http://repos.fedorapeople.org/repos/dchen/Apache-maven/epel-Apache-maven.repo -O /etc/yum.repos.d/epel-Apache-maven.repo
-> Sudo sed -i s/\$releasever/6/g /etc/yum.repos.d/epel-Apache-maven.repo
-> Sudo yum install -y Apache-maven
-> mvn --version
Ausgabe sieht aus wie
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T07: 58: 13Z) Maven-Startseite:/usr/share/Apache-maven Java. Version: 1.8.0_171, Anbieter: Oracle Corporation Java-Startseite: /usr/lib/jvm/Java-1.8.0-openjdk-1.8.0.171-8.b10.amzn2.x86_64/jre Standardgebietsschema: en_US, Plattformkodierung: UTF-8 Betriebssystemname: "linux", Version: "4.14.47-64.38.amzn2.x86_64", Bogen: "AMD64", Familie: "Unix"
* Wenn der geworfene Fehler mit Java zusammenhängt, führen Sie den folgenden Schritt aus, um Java 8 zu aktualisieren. *
Installieren von Java 8 in Amazon linux/redhat
-> yum search Java | grep openjdk
-> yum install Java-1.8.0-openjdk-headless.x86_64
-> yum install Java-1.8.0-openjdk-devel.x86_64
-> update-alternatives --config Java #pick Java 1.8
und 1 drücken
-> update-alternatives --config javac #pick Java 1.8
und drücken Sie 2
Danke dir
Manchmal erhalten Sie "Exception in thread" main "Java.lang.NoClassDefFoundError: org/codehaus/classworlds/Launcher", auch wenn Sie die Parameter M2_HOME und PATH richtig eingestellt haben.
Diese Ausnahme ist, weil Ihre JDK/Java-Version aktualisiert/installiert werden muss.