Install Latest Apache Maven on CentOS 7 & Fedora 30/29/28
source link: https://computingforgeeks.com/installing-latest-apache-maven-on-centos-fedora/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Apache Maven is a software project management/automation tool used primarily for managing Java project’s build, reporting, and documentation from a central piece of information. This tutorial will help you to install Apache Maven on CentOS 7 / Fedora 30/29/28.
For Ubuntu / Debian, use: Install Latest Apache Maven on Ubuntu & Debian
Step 1: Update system & Install Java
Apache Maven requires the host system to have the Java Development Kit. Install OpenJDK on CentOS 7 / Fedora:
Install Java on CentOS 7:
sudo yum install lsof java-1.8.0-openjdk java-1.8.0-openjdk-devel
java -version
Install Java on Fedora:
$ sudo dnf install java-11-openjdk
OR
$ sudo dnf install java-1.8.0-openjdk java-1.8.0-openjdk-devel
After the installation of Java, you can quickly confirm the version using the following command:
$ java -version
java version "11.0.1" 2018-10-16 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.1+13-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.1+13-LTS, mixed mode)
Step 2: Download and Install Apache Maven
Check the latest release of Apache Maven and save this to a variable:
export VER="3.6.1"
Download the latest release of Apache Maven exported above:
curl -O http://www-eu.apache.org/dist/maven/maven-3/${VER}/binaries/apache-maven-${VER}-bin.tar.gz
Now extract the downloaded tarball
tar xvf apache-maven-${VER}-bin.tar.gz
Move the resulting directory to /opt
sudo mv apache-maven-${VER} /opt/maven
Setup Environment Variables to load Apache Maven
cat <<EOF | sudo tee /etc/profile.d/maven.sh
export MAVEN_HOME=/opt/maven
export PATH=\$PATH:\$MAVEN_HOME/bin
EOF
Source the file
$ source /etc/profile.d/maven.sh
$ echo $MAVEN_HOME
/opt/maven
$ echo $PATH
Your $PATH
should have /opt/maven/bin
at the end.
Step 3: Verify the Installation
Finally, validate that Apache Maven has been installed correctly:
$ mvn --version
Apache Maven 3.6.1 (d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555; 2019-04-04T12:00:29-07:00)
Maven home: /opt/maven
Java version: 11.0.2, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-11-openjdk-amd64
Default locale: en_US, platform encoding: ISO-8859-1
OS name: "linux", version: "4.15.0-46-generic", arch: "amd64", family: "unix"
This command should print Maven version and used Java version.
All options are available on:
$ mvn -h
Create Maven projects directory:
mkdir ~/mvn-projects
cd ~/mvn-projects
Create your first project:
mvn archetype:generate -DgroupId=com.mycompany.app \
-DartifactId=my-app \
-DarchetypeArtifactId=maven-archetype-quickstart \
-DinteractiveMode=false
Since this is the first run, it may take a while to execute. This is because Maven is downloading the most recent artifacts (plugin jars and other files) into your local repository.
On a successful run, you should get output similar to below:
INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters for creating project from Old (1.x) Archetype: maven-archetype-quickstart:1.0
[INFO] ----------------------------------------------------------------------------
[INFO] Parameter: basedir, Value: /root/projects
[INFO] Parameter: package, Value: com.mycompany.app
[INFO] Parameter: groupId, Value: com.mycompany.app
[INFO] Parameter: artifactId, Value: my-app
[INFO] Parameter: packageName, Value: com.mycompany.app
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] project created from Old (1.x) Archetype in dir: /root/projects/my-app
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 15.301 s
[INFO] Finished at: 2018-11-18T02:26:08-05:00
[INFO] ------------------------------------------------------------------------
The generate goal
created a directory with the same name given as the artifactId.
$ tree my-app/
my-app/
├── pom.xml
└── src
├── main
│ └── java
│ └── com
│ └── mycompany
│ └── app
│ └── App.java
└── test
└── java
└── com
└── mycompany
└── app
└── AppTest.java
11 directories, 3 files
- The
src/main/java
directory contains the project source code - The
src/test/java
directory contains the test source - The file
pom.xml
is the project’s Project Object Model (POM).
The filepom.xml
is the core of a project’s configuration in Maven. It contains the majority of information required to build a project.
Build the Project
To build your Project, run:
mvn package
The command line will print out various actions, and end with the following:
.....
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3 seconds
[INFO] Finished at: Thu Nov 18 10:39:20 EAT 2018
[INFO] Final Memory: 2M/6M
[INFO] ------------------------------------------------------------------------
That’s all. Check Official Maven Documentation for further learning.
You can also read:
How to Install Apache Spark on Ubuntu / Debian
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK