来吧,Jenkins+git+mvn+shell一键部署实践起来

news2024/7/6 19:28:02

环境:

centos

Jenkins-2.319

系统自带git

mvn3.8.7

jdk1.8

一、安装jdk

1、https://blog.csdn.net/codedz/article/details/124044974

centos自带了openjdk,我是选择自己重新搞一个,用的上面链接地址的yum安装方式

2、安装完成

查看版本

查看java安装路径

 which java

配置环境变量

编辑profile:
vim /etc/profile
profile文件中添加:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.352.b08-2.el7_9.x86_64
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$JAVA_HOME/lib:$CLASSPATH
生效配置:
source /etc/profile
查看JAVA_HOME
 echo $JAVA_HOME

jdk配置完成

二、安装mvn

1、服务器新建一个文件夹用于存放mvn,

例如我的是:/usr/local/maven

新建:/usr/local/maven/repository 用于存放依赖包

然后 :cd /usr/local/maven 进入maven目录

2、下载mvn

https://maven.apache.org/download.cgi

wget https://dlcdn.apache.org/maven/maven-3/3.8.7/binaries/apache-maven-3.8.7-bin.tar.gz

如果遇到

使用--no-check-certificate 下载,执行命令时多等一会儿才有反应

wget --no-check-certificate  https://dlcdn.apache.org/maven/maven-3/3.8.7/binaries/apache-maven-3.8.7-bin.tar.gz

3、下载完成,在当前目录解压

tar -zxvf apache-maven-3.8.7-bin.tar.gz

4、配置Maven环境变量

# 编辑profile文件
vim /etc/profile

# 在配置文件末尾加上maven路径
export MAVEN_HOME=/usr/local/maven/apache-maven-3.8.7
export MAVEN_HOME 
export PATH=$PATH:$MAVEN_HOME/bin

# 使配置文件立即生效
source /etc/profile

5、检查安装配置是否成功

mvn -version

安装后,注意配置setting.xml文件, 同时将maven文件夹赋予所有访问写入权限,不然后续mvn拉取依赖会报权限不足

至此准备工作完成,开始搞jenkins

三、jenkins安装

见我的上一篇文章:https://blog.csdn.net/qq_36608921/article/details/128732621

如果不想关闭防火墙,可单独开放访问端口,然后重启防火墙即可

四、配置jenkins

访问:http://服务器ip:9091/

因为我这边8080端口号被占用,所有我改了端口号为:9091

1、初次进入,配置密码(该密码也是admin的默认密码)

2、安装插件

安装gitee插件、git插件

git插件,搜出来很多,管他三七21,差不多看着觉得合适的咔咔的都选上完事

五、配置jdk\mvn\git

其中git默认就好,不用修改

全局工具

maven

jdk

git

然后保存

六、java\maven\gitee环境变量配置

配置gitee需要用户名/密码 或者 gitee 私人令牌

点击 添加-Jenkins;可选择用户名密码 或者 私人令牌,根据操作提示一步一步配置即可

以及下面的maven配置

七、创建第一个项目

1、填一个名字,选择自由风格类型

2、选择gitee链接

3、配置源码管理

这个地方需要注意的是,还得新建一个用户名密码的凭据源码才能配置成功

4、构建环境执行shell脚本

下面shell脚本为简单的打包并运行jar包

然后点击应用保存,会回到当前job界面

点击立即构建

点击现目的绿色勾

即可查看控制台输出,红色框表示拉取的代码位置

至此,jenkins + git + mvn 打包部署完成,具体shell脚本的编写,每个公司不一样,请自行研究了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/173737.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

优思学院|质量人对控制图中的规格线和控制线傻傻分不清?

质量人、六西格玛[1]人和很多不同类型的工程师都需要了解什么是控制图,而在控制图中的规格限制(Specification Limit)"和"控制限制(Control Limit)"原来对好多人来说都是傻傻分不清! 规格限…

线段树入门

对于一个区间进行询问,进行修改,都是用线段树进行处理。线段树和普通的树不一样,普通的树的节点存的是一个编号,线段树存的是一个区间,而且线段树一定是一棵完全二叉树。例如:这就是一棵线段树。例如对于[1…

【Ajax】数据交换格式XML 和 JSON

一、什么是数据交换格式数据交换格式,就是服务器端与客户端之间进行数据传输与交换的格式。前端领域,经常提及的两种数据交换格式分别是 XML 和 JSON。其中 XML 用的非常少,所以,我们重点要学习的数据交换格式就是 JSON。二、XML1…

让交互更加生动!巧用CSS实现鼠标跟随 3D 旋转效果

简单分析一下,这个交互效果主要有两个核心: 借助了 CSS 3D 的能力 元素的旋转需要和鼠标的移动相结合 本人简单的说一下如何使用纯 CSS 实现类似的交互效果,以及,借助 JavaScript 绑定鼠标事件,快速还原上述效果。 …

数据结构---set篇

第一次超时是因为用memsetmemsetmemset不得不超时,第二次超时是我用vectorvectorvector数组的时候,然后以O(n)O(n)O(n)复杂度查找元素之后使用eraseeraseerase方法进行删除,第三次超时是我把查找元素改成了O(logn)O(logn)O(logn)之后用vector…

epoll的ET和LT模式

简介 epoll对fd的操作有两种模式:LT(Level Trigger,水平触发)模式,和ET(Edge Trigger,边缘触发)模式。 LT 模式是默认的工作模式,这种模式下,epoll相当于一个效率较高的poll; ET模…

89. 注意力机制以及代码实现Nadaraya-Waston 核回归

1. 心理学 动物需要在复杂环境下有效关注值得注意的点心理学框架:人类根据随意线索和不随意线索选择注意点 随意:随着自己的意识,有点强调主观能动性的意味。 2. 注意力机制 2. 非参注意力池化层 3. Nadaraya-Waston 核回归 4. 参数化的注意…

Downie4.6.4视频下载工具

前言 Downie是Mac下一个简单的下载管理器,可以让您快速将不同的视频网站上的视频下载并保存到电脑磁盘里然后使用您的默认媒体播放器观看它们。 下载 Downie 解压后直接安装 主要特点 支持许多网站目前支持超过1,000个不同的网站(包括YouTube&#…

Linux | 浅谈Shell运行原理【王婆竟是资本家】

文章目录💧Shell的运行原理👉Shell的基本概念与作用👉原理的展示与剖析👉Shell外壳感性理解【一门亲事】💧总结💧Shell的运行原理 👉Shell的基本概念与作用 Linux严格意义上说的是一个操作系统…

华为数字化转型之道 平台篇 第十三章 变革治理体系

第十三章 变革治理体系 约翰科特在《领导变革》一书中说:“变革的领导团队既需要管理能力,也需要领导能力,他们必须结合起来。 前面我们也谈到,数字化转型不仅是技术的创新,更是一项系统工程和企业真正的变革。企业要转型成功,既需要各个组织的积极参与和通力合作,又不…

深度学习中高斯噪声:为什么以及如何使用

在数学上,高斯噪声是一种通过向输入数据添加均值为零和标准差(σ)的正态分布随机值而产生的噪声。 正态分布,也称为高斯分布,是一种连续概率分布,由其概率密度函数 (PDF) 定义: pdf(x) (1/ (σ*sqrt(2*π))) *e^(- (x…

Task6:文本函数查找函数

文章目录一 文本函数1 Text函数2 mid函数3 replace函数二 查找函数1 Vlookup2 Xlookup一 文本函数 1 Text函数 作用:将数值转换为指定格式的文本 语法:TEXT(value,format_text) (1)转换为大写 消费日期转换为大写 TEXT(A2,”[DB…

第五届字节跳动青训营 前端进阶学习笔记(六)什么才是好的JavaScript代码

文章目录前言问题引入实现一个交通信号灯的状态切换1.基本实现2.状态封装实现3.职责分离实现求一个数是否是4的幂1.基本实现3.数学优化洗牌算法1.基本实现2.均匀算法实现总结前言 课程重点: 代码规范相关事项如何优化代码 问题引入 试看下面一段代码&#xff0c…

认识UDP、TCP协议

一、Socket 首先,我们需要了解一下socket。 在上一篇文章当中,我们了解了TCP-IP五层协议模型初识网络:IP、端口、网络协议、TCP-IP五层模型_革凡成圣211的博客-CSDN博客TCP/IP五层协议详解https://blog.csdn.net/weixin_56738054/article/det…

Crack:RadiAnt DICOM Viewer 2023.1 BETA #1300

RadiAnt DICOM Viewer 2023.1 BETA #1300 built on January 13, 2023 New features: Length ratio calculation. Ellipsoid / bullet volume calculation. Added option to color and/or pin specific items to top in the DICOM tags window. 多式DICOM的技术支持 该软件能够打…

是时候分享一波jenkins centos的安装了

1、下载注意:至少安装2.319的版本,否则插件安装失败,2.357 之后版本需要java11,请注意java版本a、开始下载,利用华为云地址 https://mirrors.huaweicloud.com/home,速度杠杠快搜索jenkins,点击j…

api接口对接如何实现,php如何对接api

这篇文章来分享下api接口对接如何实现,还有源码,希望对新手有所帮助。 什么是API? 我的回答:API( 应用程序编程接口):一般来说,这是一套明确定义的各种软件组件之间的通信方法。 什么是API&…

Android数据库之SharedPreferences、SQLite、Room

文章目录一、SharedPreferences二、SQLite三、Room使用Room进行增删改查Room数据库升级一、SharedPreferences 要想使用SharePreferences来存储数据,首先需要获取到SharedPreferences对象。Android中提供了三种方法用于得到SharedPreferences对象 1.Context类中的g…

20230119英语学习

Back to the Future 在故宫修钟表是种什么样的体验? After a year of complex restoration, specialists from the Palace Museum in Beijing have given a pair of antique pagoda clock automata a new lease on life. In the form of a nine-tiered pagoda, th…

单片机寄存器

单片机寄存器简述 1、单片机寄存器就是单片机片内存储器(片内RAM)一部分,每一个都有地址。只不过这几个寄存器有特殊的作用,比如指令:MUL AB,这条指令用到两个寄存器A,B进行乘法,结果存到BA里面,这条指令必…