Jenkins+Maven+svn+SSH插件自动远程发布项目

声明:
如果您有更好的技术与作者分享,或者商业合作;
请访问作者个人网站 http://www.esqabc.com/view/message.html 留言给作者。
如果该案例触犯您的专利,请在这里:http://www.esqabc.com/view/message.html 留言给作者说明原由
作者一经查实,马上删除。

准备条件:

配置jdk1.8:
1,下载jdk

[root@test ~]# wget https://download.oracle.com/otn/java/jdk/8u191-b12/jdk-8u191-linux-x64.tar.gz

2,解压jdk

[root@test local]# tar zxvf jdk-8u191-linux-x64.tar.gz

3,修改配置文件:vi /etc/profile

[root@test ]# vi /etc/profile
添加配置信息:

export JAVA_HOME=/usr/local/jdk1.8.0_191
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}

4,刷新配置文件

[root@test ~]# source /etc/profile

5,查看是否安装成功:

[root@test ~]# java -version

1,Jenkins插件安装

安装Jenkins请看:https://blog.csdn.net/esqabc/article/details/90257590
检查以下几个插件是否安装
1,Maven Integration (Maven集成插件)
2,Publish Over SSH (SSH远程发布插件)
没有安装请在这里安装:
在这里插入图片描述

2,配置打包需要的插件(JDK、Maven)

英文版:
在这里插入图片描述
中文版:
在这里插入图片描述

a,配置JDK:
在这里插入图片描述
b,出现这个,点击链接,填写Order的账号和密码
在这里插入图片描述
c,配置Maven:
在这里插入图片描述
d,点击应用,然后保存:
在这里插入图片描述

3,Jenkins使用(使用Maven自动打包一个项目)

a,在主页选择(创建新任务),进入下面,选择创建一个自由风格的项目
在这里插入图片描述
b,General==》选择丢弃旧的构建
在这里插入图片描述
c,源码管理==>Subversion (根据自己代码库地址选项,我的代码是在SVN上面的)
Repository URL:项目所在svn的地址,如:https://ip/svn/test/jarweb-jen-ans
Credentials:svn访问账号和密码 ,如果没有请添加一个svn访问账号和密码
在这里插入图片描述
在这里插入图片描述
d,构建触发器(根据自己的选择,我这里选择的是定时执行)
日程表:是cron表达式,每分钟执行一次:*/1 * * * *
在这里插入图片描述
e,构建环境部分,选中Delete workspace before build starts
在这里插入图片描述
f,构建部分,选择调用顶层Maven目标
Maven 版本 :已经配置好的版本
目标:既我们在Eclipse或者ieda,执行Maven的命令
如Eclipse:右键项目–》Run As–》Maven build --》Goals框框命令一样,我这里是:clean install
在这里插入图片描述
g,点击保存,这样就会每隔一分钟,执行一次,从svn拉取代码到Jenkins,然后打包成Docker镜像上传到私仓库
在这里插入图片描述
h,点击工作空间==》target文件夹,查看我们刚刚自动打包的jar文件
在这里插入图片描述
在这里就可以看到我们刚刚通过jenkins自动打包的jar文件了,说明Jenkins自动打包成功
在这里插入图片描述

4,Jenkins使用(自动检测代码更新打包并通过[Publish over SSH]远程发布)

(1)配置Jenkins==》Publish over SSH
a,在主页点击系统管理==》系统设置
在这里插入图片描述
b,上下滚动找到Publish over SSH配置
在这里插入图片描述
Jenkins SSH Key:你的服务器SSH登录密码
SSH Servers部分:
Name:连接名称(自定义)
Hostname:你的服务器IP
Username:你的SSH登录名(如:root)
Remote Directory:需要发送到的目录(如:/usr/data/)

(2)配置Jenkins任务
a,在主页选择(创建新任务),进入下面,选择创建一个自由风格的项目

在这里插入图片描述

b,General==》选择丢弃旧的构建

在这里插入图片描述

c,源码管理==>Subversion (根据自己代码库地址选项,我的代码是在SVN上面的)
Repository URL:项目所在svn的地址,如:https://ip/svn/test/jarweb-jen-ans
Credentials:svn访问账号和密码 ,如果没有请添加一个svn访问账号和密码

在这里插入图片描述
在这里插入图片描述

d,选择构建触发器

在这里插入图片描述
【* * * * *】5个星,就是说每1分钟就去Svn检测一次代码有没有更新,有的话就执行任务

e,构建环境

选择(Send files or execute commands over SSH)在构建运行后通过ssh发送文件或执行命令
在这里插入图片描述
Name:你上面配置的ssh信息
Transfers部分:
Source files:你的自动任务,打包项目成功后的文件地址,
(我的是:**/jarweb-jen-ans.jar,指的是在target文件夹下的jarweb-jen-ans.jar)
在这里插入图片描述
Remove prefix:发布文件所在的文件夹(如:target)
Remote directory:远程服务器的目录地址(如:/test,指的是在远程服务器/home/tools/创建一个文件夹test,/home/tools/的位置是上面配置SSH的时候,已经配置好了的)
Exec command:打包发布后,执行远程服务器脚本的地址(如:/home/tools/test/webjar.sh)

linux系统的sh脚本编写请看这个地址:https://blog.csdn.net/esqabc/article/details/91045089

f,构建部分,选择调用顶层Maven目标
Maven 版本 :已经配置好的版本
目标:既我们在Eclipse或者ieda,执行Maven的命令
如Eclipse:右键项目==》Run As==>Maven build ==>Goals框框命令一样,我这里是:clean install
在这里插入图片描述
到了这一步就已经完成打包发布的功能了,然后在你Eclipse或者ieda修改一下代码提交SVN,到Jenkins主页看看是否打包成功
如果打包成功,就在浏览器输入您项目的访问地址,看看有没有发布成功吧

5,Jenkins 的其它功能

1,重启:
在浏览器输入:http://localhost:8080/restart,
2,重新加载配置信息:
在浏览器输入:http://localhost:8080/reload

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值