Jenkins 创建Maven项目
上面我讲述的Job都是非编译项目,也就是代码从仓库中拉下来,不经过任何操作就可以发布,这对于像Java、Android等源码需要编译的项目是不可用的,下面我们讲解如何使用Maven插件来构建Java项目。
1、Maven介绍
Maven是一个项目管理和综合工具。
Maven提供给开发人员构建一个完整的生命周期框架。
开发团队可以自动完成该项目的基础设施建设,Maven使用标准的目录结构和默认构建生命周期。
Apache的开源项目主要服务于JAVA平台的构建、依赖管理、项目管理。
Project Object Model,项目对象模型。
通过xml格式保存的pom.xml文件。
该文件用于管理:源代码、配置文件、开发者的信息和角色、问题追踪系统、组织信息、项目授权、项目的url、项目的依赖关系等等。
该文件是由开发维护,我们运维人员可以不用去关心。
2、安装Maven插件
我们要使用Jenkins+Maven对Java项目进行构建,需要安装Maven Project Plugin,具体安装过程请参考插件管理部分
3、Linux下安装Maven
1)下载Maven 3安装包
官网:http://maven.apache.org/download.cgi
清华镜像:https://mirrors.tuna.tsinghua.edu.cn/apache/maven/
2)安装Maven
[root@node3 src]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz^C
[root@node3 src]# tar xf apache-maven-3.3.9-bin.tar.gz
[root@node3 src]# mv apache-maven-3.3.9 /usr/local/
[root@node3 src]# ln -s /usr/local/apache-maven-3.3.9/ /usr/local/maven
[root@node3 src]# cd ..
[root@node3 local]# /usr/local/maven/bin/mvn -v
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: /usr/local/maven
Java version: 1.8.0_121, vendor: Oracle Corporation
Java home: /usr/java/jdk1.8.0_121/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"
3)配置
编辑/etc/profile文件,在末尾添加export PATH=/usr/local/apache-maven-3.3.9/bin/:$PATH
4、Maven 插件配置
配置如下
5、创建Maven Job
在我们创建Job之间,首先要保证我们的Gitlab仓库有一个java的源码仓库,下面我先在Gitlab上导入一个Java的仓库:
远程仓库地址:http://code.greatops.net/greatops/practice-code.git ,导入成功后我们得到这样的一个仓库
接下来我们创建Maven Job
通用部分:
源码管理部分:
构建部分:
执行构建后:
构建完成生,我们在看到在我们的工作区中,每个项目下面生成了一个target目录,里面有一个XXX.jar的文件,这个就是我们的构建产物,构建产物的名称是在项目的pom.xml文件定义,我们可以把这个文件发布到我们的服务器。
接着,我们增加一个Post Steps,用于将构建产物发布,配置如下:
构建执行后:
我们还可以归档构建后产物:
构建后,在我们的项目可以看到构建产物:
6、Maven的常用命令
此部分内容了解即可,
- 创建Maven的普通java项目:
1)创建Maven的普通java项目:
mvn archetype:create
-DgroupId=packageName
-DartifactId=projectName
2) 创建Maven的Web项目:
mvn archetype:create
-DgroupId=packageName
-DartifactId=webappName
-DarchetypeArtifactId=maven-archetype-webapp
3.)清除后再编译
mvn clean install
我们Jenkins Biuld部分最常用的配置是:
clean install -Dmaven.test.skip=true
Jenkins 创建Maven项目相关推荐
- Jenkins创建Maven项目及SSH部署
前面我们已经安装了Jenkins的环境,以及配置好了jdk和maven.下面我们来看如何通过Jenkins将svn的项目进行打包和部署. 创建MAVEN项目 1.点击新建,输入项目名,选择" ...
- Jenkins创建maven项目
文章目录 1. maven简介 2. 安装mvn 3. Jenkins构建一个maven项目 1. maven简介 https://mirrors.tuna.tsinghua.edu.cn/apach ...
- Jenkins——Jenkins构建Maven项目(三种风格)+Jenkins项目构建细节
Jenkins构建Maven项目+Jenkins项目构建细节 Jenkins构建的项目类型介绍 自由风格项目构建 拉取代码 编译打包 远程部署 代码改动后的持续集成 Maven项目构建 Pipelin ...
- 创建maven项目但是总是报错
在创建maven项目的时候总是报错,也不知道为什么,是不是我本地的maven版本是太低了,还是其他的什么原因,那么我还是重新下载一个maven吧,怎么下载: 我们可以从这个地址去下载: http:// ...
- IDEA创建maven项目报错解决:Failed to create a Maven project: 'C:/Users/../IdeaProjects/../pom.xml' already e
此文首发于我的个人博客:IDEA创建maven项目报错解决 Failed to create a Maven project 'C:/Users/-/IdeaProjects/-/pom.xml' a ...
- 首次创建maven项目的准备工作
需要JDK1.5以上.Eclipse.maven maven下载地址:http://maven.apache.org/download.cgi 1.配置环境变量新建系统变量M2_HOME 2.运行cm ...
- Maven -- 使用Myeclipse创建Maven项目
使用Myeclipse创建Maven项目有如下几种方式: 1.创建Maven Java项目 1.1 选择新建Maven项目 1.2.选择创建简单项目 1.3.填写项目信息 1.4.创建成功后项目目录结 ...
- eclipse 创建maven 项目 动态web工程完整示例
需求表均同springmvc案例 此处只是使用maven 注意,以下所有需要建立在你的eclipse等已经集成配置好了maven了,说白了就是新建项目的时候已经可以找到maven了 没有的话需要安装m ...
- myeclipse 10创建maven项目
创建maven项目,这里使用的不是myeclipse自带的maven插件,而是自己 又一次安装的插件,就不啰嗦了,直接上图吧 1.先是安装maven插件,将maven插件解压把它放进E:\xuan\M ...
最新文章
- go where 不等于_go基础之map迭代(四)
- 3D打印神经电极有助于将大脑连接到电脑
- Oracle数据库知识要点
- 建站初期关键字的定位
- 解决Exchange的Client not authenticated问题
- 45张令程序员泪流满面的趣图
- c# u盘使用记录_U盘如何快速清除使用记录【详解】
- 用反射方法使用户控件动态调用父页面的方法
- python学习10
- Java线程局部变量ThreadLocal
- matplotlib无法显示图片的解决方法(non-gui backend)
- Android性能优化---布局优化
- 2020-07-17
- 网站监控工具有哪些4款免费国内在线网站监控工具
- android中正则表达式截取html中的video标签
- c语言无法定位程序输入点 于动态链接库,无法定位程序输入点于动态链接库?解决方法步骤...
- 计算机sci二区期刊,SCI二区期刊汇总表
- 计算机桌面文件隐藏如何显示不出来,如何显示电脑中隐藏的磁盘分区|将电脑中隐藏的分区显示出来的方法...
- 月影无终的伤感日志最新推荐:搁浅的回忆,谁来承受
- Error creating bean with name ‘sqlSessionFactory’ defined in class path reso
热门文章
- python---django中权限框架设计
- 【开源】NodeJS仿WebApi路由
- 前端编码风格规范(3)—— JavaScript 规范
- 【UML】如何看Android的UML图
- asp.net mvc 正常支持Fckeditor编辑器
- arcgis设置nodata值_新版白话空间统计(6):在ArcGIS中实现莫兰指数计算
- java web基础编程题_云课堂javaweb微专业Java基础测试题3
- 根据树的两种遍历序列求第三种遍历序列
- python_day_5:20180720
- 常用UI模板,loading框,提醒框,弹框确认框