如何使用Jenkins构建GIT+Maven项目

前言

最近写了一篇博客是关于使用Jenkins来构建SVN+Maven项目 ,这里使用的的代码版本工具是SVN,但是事实上也有很多公司使用GIT来进行代码管理,那么我们如何使用Jenkins去自动发布GIT+Maven项目呢?

正文 Jenkins

Jenkins是一个开源的、可扩展的持续集成、交付、部署的基于web界面的平台。允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成。

通常我们使用Jenkins主要实现以下功能:

  • 持续集成指的是,频繁地(一天多次)将代码集成到主干。将软件个人研发的部分向软件整体部分交付,频繁进行集成以便更快地发现其中的错误。
  • 持续交付指的是,频繁地将软件的新版本,交付给质量团队或者用户,以供评审。如果评审通过,代码就进入生产阶段。
  • 持续部署是持续交付的下一步,指的是代码通过评审以后,自动部署到生产环境。持续部署的目标是,代码在任何时刻都是可部署的,可以进入生产阶段。

使用Jenkins来构建GIT+Maven项目

1.安装GIT

其实很多系统都会自带git工具,但是由于自带的git版本太低,无法满足jenkinsgit工具版本的需求,所以建议升级git后,再进行jenkins的安装和配置。

第一步:安装所需的依赖

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install gcc perl-ExtUtils-MakeMaker
yum install perl-ExtUtils-MakeMaker package

第二步:卸载原有GIT

yum remove -y git
git --version

第三步:安装新的GIT

cd /usr/local/src/
wget https://www.kernel.org/pub/software/scm/git/git-2.15.1.tar.xz
tar -vxf git-2.15.1.tar.xz
cd git-2.15.1
make prefix=/usr/local/git all
make prefix=/usr/local/git install
echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/profile
source /etc/profile
git --version

第四步:创建GIT链接

ln -s /usr/local/git/bin/git-upload-pack /usr/bin/git-upload-pack
ln -s /usr/local/git/bin/git-receive-pack /usr/bin/git-receive-pack

2.配置git免密登陆

第一步:jenkins服务器生成公钥和密钥

  • /root/.ssh/id_rsa.pub:公钥,通常用于加密会话密钥。
  • /root/.ssh/id_rsa:密钥,用于验证数字签名。
  • /root/.ssh/authorized_keys:存放其他服务器的公钥。

执行下面的命令后将自动生成对应文件

ssh-keygen -t rsa

第二步:将jenkins生成的公钥id_rsa.pub加入到git服务器authorized_keys文件中

chattr -ia authorized_keys

chmod 777 authorized_keys

vim authorized_keys

第三步:获取密钥id_rsa的内容

cat /root/.ssh/id_rsa

3.安装与配置Jenkins

第一步:下载war安装包

官方下载地址:https://www.jenkins.io/download/

第二步:安装并配置Jenkins

nohup java -jar jenkins.war &

jenkins默认的路径:IP:8080 ,进入管理界面后根据提示进行配置

  • 根据提示从指定的位置获取初始的管理员密码
  • 配置一个用户
  • 安装系统推荐Jenkins插件

第三步:根据需要安装Jenkins插件

jenkins——Manage Jenkins——插件管理中安装以下插件:

Publish Over SSH:用于通过ssh方式连接远程服务器,从而实现代码远程推送。

第四步:配置本地工具

jenkins——Manage Jenkins——Global Tool Configuration中配置MavenJDKGIT

  • 使用Maven来构建项目
  • JDK为项目提供了运行环境
  • GIT为代码的版本控制仓库。

Maven 配置


JDK的配置

GIT的配置

第五步:配置系统配置
jenkins——Manage Jenkins——System Configuration中配置远程服务器,这个服务器即为项目的运行容器。

第六步:配置GIT密钥
jenkins-凭据-系统-全局凭据 中配置git密钥

第七步:创建一个新任务,配置源码管理、构建和构建后操作

源码管理

构建

构建后操作

run.sh:脚本用于启动spring-dubbo-producer.jar

APP_NAME=spring-dubbo-producer.jar
path=`pwd`

#使用说明,用来提示输入参数
usage() {
echo "Usage: sh 执行脚本.sh [start|stop|restart|status]"
exit 1
}
#检查程序是否在运行
is_exist(){
pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' `
#如果不存在返回1,存在返回0
if [ -z "${pid}" ]; then
return 1
else
return 0
fi
}
#启动方法
start(){
is_exist
if [ $? -eq "0" ]; then
echo "${APP_NAME} is already running. pid=${pid} ."
else
source /etc/profile
nohup java -jar $APP_NAME > $path/logs.txt 2>&1 &
fi
}
#停止方法
stop(){
is_exist
if [ $? -eq "0" ]; then
kill -9 $pid
else
echo "${APP_NAME} is not running"
fi
}
#输出运行状态
status(){
is_exist
if [ $? -eq "0" ]; then
echo "${APP_NAME} is running. Pid is ${pid}"
else
echo "${APP_NAME} is NOT running."
fi
}
#重启
restart(){
stop
start
}
#根据输入参数,选择执行对应方法,不输入则执行使用说明
case "$1" in
"start")
start
;;
"stop")
stop
;;
"status")
status
;;
"restart")
restart
;;
*)
usage
;;
esac

第七步:构建项目,进行验证

构建项目

验证
访问自己的项目的界面进行验证,我这里以knife4j为例:ip:8080/doc.html

到此这篇关于如何使用Jenkins构建GIT+Maven项目的文章就介绍到这了,更多相关Jenkins构建GIT+Maven项目内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 使用Jenkins配置Git+Maven的自动化构建的方法

    背景 最近安装Jenkins,参照网上的各种资料进行尝试,折腾了好久,但是查找了这么多资料,相似度在90%以上!!!,相同的安装过程,测试了几台机器,未曾成功,不得不感慨自己能力有限,最终慢慢摸索,形成思路,现分享给大家,希望大家在安装的时候少走弯路. PS:本人很痛恨那种粘贴复制,毫无思考的博主,本想着拿着解决问题的心态,但结果还是一样,不但浪费了大家的时间,还浪费了大家的感情,所以,我把我遇到的问题和解决的方式记录下来和大家分享. 知识背景 首先需要理解的是,Jenkins是帮我们将代码进行

  • 在CentOS7上搭建Jenkins+Maven+Git持续集成环境的方法

    本文以部署 Spring boot + Maven 项目为例,使用码云作为代码托管仓库,在 CentOS 7 上搭建 Jenkins 持续集成环境. 1. 准备工作 1.1 安装 Java 环境 Jenkins 是基于 Java 开发的持续集成工具,需要在 Java 环境下运行.用下面命令查看系统是否已安装 Java: yum list installed | grep jdk 如果没有,使用 yum search 命令查找 openjdk 版本,选择合适的 jdk 进行安装: yum sear

  • 使用jenkins+maven+git发布jar包过程详解

    1.新建maven项目 2.配置git仓库 3.在远程机器上执行脚本,这一步需要先配置能ssh远程机器 a.安装publish over ssh 插件 b.jenkins----配置----config system,配置远程连接主机账号密码 高级那边配置密码 c.配置Send files or execute commands over SSH after the build runs 4.构建jar包 5.前面Send files or execute commands over SSH a

  • centos下GitLab+Jenkins持续集成环境搭建(安装jenkins)

    centos下搭建GitLab+Jenkins持续集成环境,供大家参考,具体内容如下 1.安装JDK yum install -y java 2.安装jenkins 添加Jenkins库到yum库,Jenkins将从这里下载安装. wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo rpm --import https://jenkins-ci.org/redhat/jenkins

  • 如何使用Jenkins构建GIT+Maven项目

    前言 最近写了一篇博客是关于使用Jenkins来构建SVN+Maven项目 ,这里使用的的代码版本工具是SVN,但是事实上也有很多公司使用GIT来进行代码管理,那么我们如何使用Jenkins去自动发布GIT+Maven项目呢? 正文 Jenkins Jenkins是一个开源的.可扩展的持续集成.交付.部署的基于web界面的平台.允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成. 通常我们使用Jenkins主要实现以下功能: 持续集成指的是,频繁地(一天多次)将代码

  • 使用Jenkins来构建GIT+Maven项目的方法步骤

    前言 最近写了一篇博客是关于 使用Jenkins来构建SVN+Maven项目 ,这里使用的的代码版本工具是SVN,但是事实上也有很多公司使用GIT来进行代码管理,那么我们如何使用Jenkins去自动发布GIT+Maven项目呢? 正文 Jenkins Jenkins是一个开源的.可扩展的持续集成.交付.部署的基于web界面的平台.允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成. 通常我们使用Jenkins主要实现以下功能: 持续集成指的是,频繁地(一天多次)将代

  • 使用Jenkins来构建SVN+Maven项目的实现

     前言 在我们开发过程中,由于主流的架构都是采用前后端分离的方式,我们作为后端开发者需要为前段持续地提供运行在容器中最新代码,虽然可以通过在编译器中打完包后在放到容器运行,但是显然这种方式是既不方便的,那么能不能呢使用更加便捷的方式来构建发布程序呢? 正文 Jenkins Jenkins是一个开源的.可扩展的持续集成.交付.部署的基于web界面的平台.允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成. 通常我们使用Jenkins主要实现以下功能: 持续集成指的是,

  • 详解使用Jenkins部署Spring Boot项目

    jenkins是devops神器,本篇文章介绍如何安装和使用jenkins部署Spring Boot项目 jenkins搭建 部署分为三个步骤: 第一步,jenkins安装 第二步,插件安装和配置 第三步,Push SSH 第四步,部署项目 第一步 ,jenkins安装 准备环境: JDK:1.8 Jenkins:2.83 Centos:7.3 maven 3.5' jdk默认已经安装完成 配置maven 版本要求maven3.5.0 软件下载 wget http://mirror.bit.ed

  • Jenkins自动部署SpringBoot项目实践教程

    目录 1.Jenkins安装 2.Jenkins插件安装 3.点击添加凭据 4.Jenkins环境配置 4.1.全局配置 4.2.系统配置 5.Jenkins自动部署SpringBoot项目 6.遇到问题 7.用到的命令 1.Jenkins安装 下载jenkins安装包,maven安装包:打开xftp将安装包上传到服务器:弄maven镜像:进入maven的conf文件夹,vim打开setting.xml文件添加阿里云镜像:wq!保存退出. <!-- 阿里镜像仓库 --> <mirrors

  • 使用jekins自动构建部署java maven项目的方法步骤

    1.下载jenkins 地址:https://jenkins.io/index.html 本人下载了2.19.3版本的war包:jenkins.war 2.安装jenkins 拷贝jenkins.war到tomcat的webapps文件夹下,如果tomcat是启动的,jenkins项目会自动解压启动的,如果tomcat是停止的,需要启动tomcat服务,进入bin文件夹,linux环境下执行 ./startup.sh即可启动服务,windows下双击startup.bat即可. 然后,访问地址:

  • jenkins自动构建发布vue项目的方法步骤

    简介 Jenkins是一个开源的.提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续.自动的构建/测试软件项目.监控外部任务的运行(这个比较抽象,暂且写上,不做解释).Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行.通常与版本管理工具(SCM).构建工具结合使用.常用的版本控制工具有SVN.GIT,构建工具有Maven.Ant.Gradle. jenkins安装 1.安装JDK yum install

  • Docker使用Git实现Jenkins发布、测试项目的详细流程

    一.安装Docker PS:安装前提是已经安装了CentOS VM 1.设置下载Docker的镜像源 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 2.安装Docker yum -y install docker-ce 3.启动Docker服务 systemctl start docker 4.配置镜像加速 4.1.修改docker服务配置:vim /us

  • jenkins构建go及java项目的方法

    写在前面 jenkins作为java的好基友,经历过单体项目时代->集群项目时代->容器集群分布式时代,使用稳定可靠,cpu友好(就泪存有点儿难看),如果有问题就... (当然这种情况不多(_) ) , 至于后期又有了jenkins x(容器版),对于非容器环境这里这里就不介绍啦 然后简略介绍我自己的项目情况吧,说说我的思路:首先我的项目有一个后台mee(java).mee-api(多个,为Java项目)以及gee-api项目(多个,go项目),后台项目暂不集群分布(目前够用), mee-ap

随机推荐