一、什么是Maven
maven是一个项目管理和综合工具。Maven提供给开发人员构建一个完整的生命周期框架。
开发团队可以自动完成该项目的基础设施建设,Maven使用标准的目录结构和默认构建生命周期
maven是属于Apache的开源项目
maven主要服务于java平台的构建、依赖管理、项目管理。
二、手动安装MAVEN
(1)下载maven
[root@linux-node2 ~]# wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz
(2)解压
[root@linux-node2 ~]# tar -zxvf apache-maven-3.5.2-bin.tar.gz #解压即可使用
[root@linux-node2 ~]# mv apache-maven-3.5.2 /data/
(3)配置环境变量
[root@linux-node2 bin]# export PATH=$PATH:/data/apache-maven-3.5.2/bin
[root@linux-node2 bin]# vim /etc/profile
export PATH=$PATH:/data/apache-maven-3.5.2/bin
(4)测试
[root@linux-node2 ~]# mvn -v
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T15:58:13+08:00)
Maven home: /data/apache-maven-3.5.2
Java version: 1.8.0_151, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-693.5.2.el7.x86_64", arch: "amd64", family: "unix"
三、POM文件解析
POM是研发给出的
Project Object Model,项目对象模型
通过xml格式保存的pom.xml文件
作用类似ant的build.xml文件,功能更强大
该文件用于管理:源代码、配置文件、开发者的信息和角色、问题追踪系统、组织信息、项目授权、项目的url、项目的依赖关系等等。
四、配置系统MAVEN
系统管理-->Global Tool Configuration
新增maven
取消自动安装
填写maven实际安装路径/data/apache-maven-3.5.2
四、新建maven项目
(1)新建maven项目
(2)指定源码文职(git或svn)
(3)指定build选项
clean install
clean install -Dmaven.test.skip=true
(4)指定execute shell
java -jar target/testweb-0.0.1-SNAPSHOT.jar
配置maven:
settings.xml是maven的主要配置文件
位置$home/.m2是maven下载的插件的存储位置
(1)新建maven项目
新建一个项目,选择构建一个maven项目。如果此处没有“构建一个maven项目”的选项,需要安装插件:Maven Integration Plugin
(2)指定源码位置(git或svn)
(3)指定build选项
clean install
clean install -Dmaven.test.skip=true
(4)指定execute shell
java -jar target/testweb-0.0.1-SNAPSHOT.jar
(5)立即构建
这里在构建的过程中,可能会出现插件下载失败,需要更改maven的插件源,编辑/data/apache-maven-3.5.2/conf/settings.xml
立即构建完成,可以在/var/lib/jenkins/workspace/Java/下可以看到拉取的代码,我们找到整个项目的的jar包并执行,可以看到hello world
[root@linux-node2 target]# java -jar testweb-0.0.1-SNAPSHOT.jar
Hello World! i am guo2
五、将java的代码发布到linux-node1上
(1)修改项目的Execte shell设置,再重新构建
rsync -raz --delete --progress target/testweb-0.0.1-SNAPSHOT.jar 192.168.56.11:/opt/
ssh root@192.168.56.11 "java -jar /opt/testweb-0.0.1-SNAPSHOT.jar"
[root@linux-node1 ~]# ll /opt/
total 8
drwxr-xr-x 10 root root 4096 Dec 9 17:08 gitlab
-rw-r--r-- 1 root root 2663 Dec 22 14:16 testweb-0.0.1-SNAPSHOT.jar
[root@linux-node1 ~]# java -jar /opt/testweb-0.0.1-SNAPSHOT.jar
Hello World! i am guo2
到此一个maven项目就完成了!
本文转自 IT_外卖小哥 51CTO博客,原文链接:http://blog.51cto.com/jinlong/2053601