Jenkins 教程(一)实现自动化打包及邮件通知
个人不喜欢装腔作势一堆专业术语放上去,让大多数人看不懂来提升逼格(所谓的专家),所以我简单的介绍jenkins是干啥的。本文使用jenkins,就是让它把git仓库里的东西取出来,然后在jenkins容器中编译打包,然后执行脚本,可以是运行jar等,根据自身情况量身定制脚本。
下载
官方下载链接:https://jenkins.io/download/
windows可以直接下载msi安装,linux的话rpm或者直接下载war包。我在这里用的war包。
启动
因为它是个jar包,所以我们用命令java -jar jenkins.war
来启动。默认8080端口。
如果你希望它不在8080端口上启动,那使用命令java -jar jenkins.war httpPort=8888
启动后续步骤
启动后浏览器访问8888端口。
他会让你填写一个密匙,并告诉你密匙在哪个文件。
然后让你安装一些工具,直接点击默认按照即可。(可按需求来按照)
创建用户
-
一路next
配置环境
因为我们需要编译java项目,所以jdk和maven也必须在容器里进行安装。
我们进入 :系统管理->全局工具配置
jdk安装:
maven安装:
什么?想在项目编译失败了给你发送邮件提示?
进入: 系统管理->系统设置
首先我们看到的是
主目录是什么呢?你编译的项目就放在这里面。
进入正题,配置邮箱。
至于没有实现过邮箱发送邮件的朋友,可以看我之前的文章了解一下。Java 发送qq邮件基础和封装
开始项目
应用并保存
点这个小红点可以查看构建日志。
成功部署邮件:
部署失败邮件:
建议
后面的一小点建议,尽量在本地上部署jenkins,然后将可运行jar包上传到服务器。因为把jenkins部署在服务器可能会存在maven下载失败的问题,需要搭建maven私服来解决,很麻烦。
至于如何上传到服务器,会在下文介绍。
介绍下我的所有文集:
流行框架
SpringCloud
springboot
Spring Security
nginx
redis
底层实现原理:
Java NIO教程
Java reflection 反射详解
Java并发学习笔录
Java Servlet教程
jdbc组件详解
Java NIO教程
Java语言/版本 研究
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Mac 安装 mysqlclient
尝试在虚拟环境下通过 pip 安装: pip install mysqlclient 然后报错:OSError: mysql_config not found 找到官方文档https://github.com/PyMySQL/mysqlclient-python,解释说安装前需安装另一个模块: brew install mysql-connector-c 但是报错: 查看报错信息,在安装 mysql-connector-c 前先 brew unlink mysql 但是继续安装还是报错: 查看官方说明,原来在 macOS 下需将mysql_config 中的 # on macOS, on or about line 112: # Create options libs="-L$pkglibdir" libs="$libs -l " 改为 # Create options libs="-L$pkglibdir" libs="$libs -lmysqlclient -lssl -lcrypto" 接下来好办了,直接 which mysql_config 找到文件路径,移动到该路径下,用 ...
- 下一篇
Java并发编程-队列同步器(AbstractQueuedSynchronizer)
章节目录 Lock接口与Synchronized的区别及特性 队列同步器的接口与自定义锁示例 队列同步器的实现分析 1.Lock接口与Synchronized的区别及特性 特性 描述 尝试非阻塞性的获取锁 当前线程尝试获取锁(自旋获取锁),如果这一时刻锁没有被其他线程获取到,则成功获取并持有锁 能被中断的获取锁 已获取锁的线程可以响应中断,当获取到锁的线程被中断时,可以抛出中断异常,同时锁会被释放 超时获取锁 在指定的截止时间之前获取锁,如果截止时间到了仍然没有获取到锁,则返回 注意:Lock接口的实现基本上都是通过聚合了一个同步器的子类来完成线程访问控制的 队里同步器的接口与定义锁示例 队列同步器定义: 队列同步器,是用来构建锁与其它同步组件的基础框架,基本数据结构与内容是: 1、int state -> state 标示同步状态; 2、内置的FIFO来完成获取同步状态的线程的排队工作。 队列同步器使用方式 1、子类通过继承同步器并实现它的抽象方法来管理同步状态; 2、实现过程中对同步状态的更改,通过 setState()、 setState(int newState)、 co...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合Redis,开启缓存,提高访问速度
- MySQL8.0.19开启GTID主从同步CentOS8
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Windows10,CentOS7,CentOS8安装Nodejs环境
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2整合Thymeleaf,官方推荐html解决方案