在Ubuntu 19.04/18.04/16.04和Debian 9上安装最新的Apache Maven
时间:2020-02-23 14:32:59 来源:igfitidea点击:
Apache Maven是一种软件项目管理/自动化工具,主要用于管理Java项目的构建,报告和信息从中央信息。
本教程将在Ubuntu 19.04/18.04/16.04和Debian 9上安装Apache Maven。
第1步:更新系统和安装Java
Apache Maven要求主机系统拥有Java开发套件。
在Ubuntu/Debian上安装OpenJDK。
sudo apt update sudo apt install -y default-jdk
使用以下内容查看已安装的Java版本:
java -version
第2步:下载和安装Apache Maven
检查Apache Maven的最新版本并将其保存到变量:
export VER="3.6.1"
下载上面导出的最新版本Apache Maven:
wget http://www-eu.apache.org/dist/maven/maven-3/${VER}/binaries/apache-maven-${VER}-bin.tar.gz
现在提取下载的tar包
tar xvf apache-maven-${VER}-bin.tar.gz
将结果目录移动到 /opt
sudo mv apache-maven-${VER} /opt/maven
设置环境变量加载Apache Maven
cat <<EOF | sudo tee /etc/profile.d/maven.sh export MAVEN_HOME=/opt/maven export PATH=$PATH:$MAVEN_HOME/bin EOF
来源文件
$source /etc/profile.d/maven.sh $echo $MAVEN_HOME /opt/maven $echo $PATH
你的 $PATH
应该有 /opt/maven/bin
在最后。
第3步:验证安装
最后,验证Apache Maven已正确安装:
$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"
此命令应打印Maven版本并使用Java版本。
所有选项可供选择:
$mvn -h
创建Maven Projects目录:
mkdir ~/mvn-projects cd ~/mvn-projects
创建第一个项目:
mvn archetype:generate -DgroupId=com.mycompany.app \ -DartifactId=my-app \ -DarchetypeArtifactId=maven-archetype-quickstart \ -DinteractiveMode=false
由于这是第一次运行,因此可能需要一段时间才能执行。
这是因为Maven正在将最新的工件(插件jar和其他文件)下载到本地存储库中。
在成功运行时,我们应该获取类似于以下的
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: 2016-11-18T02:26:08-05:00 [INFO] -----------------------------------------------------------------------
这 generate goal
创建具有与ARIFACTID给出的相同名称的目录。
$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
这 src/main/java
目录包含项目源代码 src/test/java
目录包含Test Sourcethe文件 pom.xml
是项目的项目对象模型(POM)。
文件 pom.xml
是在Maven项目配置的核心。
它包含构建项目所需的大多数信息。
建立项目
要构建项目,请运行:
mvn package
命令行将打印出各种操作,并以下列方式结束:
..... [INFO] ----------------------------------------------------------------------- [INFO] BUILD SUCCESSFUL [INFO] ----------------------------------------------------------------------- [INFO] Total time: 3 seconds [INFO] Finished at: Thu Nov 18 10:39:20 EAT 2016 [INFO] Final Memory: 2M/6M [INFO] -----------------------------------------------------------------------