提前条件:

  1、在Jenkins服务器上安装Git、JDK和Maven

  2、准备另一台服务器并安装Tomcat

  3、Gitlab服务器

  4、Gitlab仓库中上传SpringBoot项目代码

第一步,Jenkins中配置JDK和Maven

1、配置JDK

2、配置Maven

第二步,在freestyle job中配置git和Maven

第三步,修改SpringBoot项目配置

1、项目入口类继承 SpringBootServletInitializer 并实现 configure方法

@SpringBootApplication
public class HotApplication extends SpringBootServletInitializer { @Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(HotApplication.class);
} public static void main(String[] args) {
SpringApplication.run(HotApplication.class, args);
} }

2、Pom.xml排除tomcat容器

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>

第四步,在Jenkins中构建SpringBoot项目

1、安装Publish over SSH插件

2、在“系统设置”中添加"Publish over SSH"主机,在高级选项中有用户名和密码配置

3、在构建中添加“Send files or execute commands over ssh”

4、所有配置以完成,点击该Job任务的“立即构建”

第五步,验证效果

访问Tomcat服务器URL + 项目名称

总结:

1、Jenkins可以通过Web Hook监控gitlab中该项目git push动作,从而实现gitlab仓库代码更新后自动触发Jenkins构建;

2、如果是比较复杂的项目部署,Jenkins可以调用ansible,通过ansible执行playbook来完成更加复杂的自动部署。

Jenkins 集成Maven打包SpringBoot项目并自动部署到Tomcat服务器的更多相关文章

  1. 【Docker】Maven打包SpringBoot项目成Docker镜像并上传到Harbor仓库(Eclipse、STS、IDEA、Maven通用)

    写在前面 最近,在研究如何使用Maven将SpringBoot项目打包成Docker镜像并发布到Harbor仓库,网上翻阅了很多博客和资料,发现大部分都是在复制粘贴别人的东西,没有经过实践的检验,根本 ...

  2. IntelliJ IDEA打包WAR并部署运行(mac osx)将Web项目War包部署到Tomcat服务器基本步骤(完整版)

    用IntelliJ IDEA做web开发体验很好,但导出war包比eclipse麻烦了不少,以下是解决方案: 打包:1.自动打包:File —> Project Structure —> ...

  3. 使用Ansible进行项目的自动部署(Tomcat、Weblogic)

    原文:https://github.com/x113773/testall/issues/4 问题:Weblogic/Tomcat 通过JAVA直接远程调用或者调用本地Shell还是通过Ansible ...

  4. 将Web项目War包部署到Tomcat服务器基本步骤

    参考来源: http://www.cnblogs.com/pannysp/archive/2012/03/07/2383364.html 1. 常识:   1.1 War包 War包一般是在进行Web ...

  5. 将Web项目War包部署到Tomcat服务器

    1. 配置Java运行环境 1.1 下载并安装JDK 从官网上下载最新的JDK:http://java.sun.com/javase/downloads/index.jsp ,下载后安装,选择想把JD ...

  6. 将Web项目War包部署到Tomcat服务器基本步骤(完整版)

    1. 常识:   1.1 War包 War包一般是在进行Web开发时,通常是一个网站Project下的所有源码的集合,里面包含前台HTML/CSS/JS的代码,也包含Java的代码. 当开发人员在自己 ...

  7. web工程自动部署(tomcat服务器)

    工作中经常需要把web项目打成war包之后部署到tomcat服务器上,每次更新时步骤比较类似,这里提供公共步骤,编写名为auto_deploy.sh的shell脚本,只需要传递两个参数即可自动完成部署 ...

  8. 使用maven 打包springboot项目步骤以及所遇到的问题

    1.首先必须确保java和maven是安装好的,并且环境变量配置正确 2.接着可以看一下我们项目中的pom.xml中的以下配置 packaging那里很关键,表示我们打包项目的类型,可以为jar 也可 ...

  9. maven打包springboot项目的插件配置概览

    jar包的术语背景: normal jar: 普通的jar,用于项目依赖引入,不能通过java -jar xx.jar执行,一般不包含其它依赖的jar包. fat jar: 也叫做uber jar,是 ...

随机推荐

  1. 按批次处理list数据 (list按条数取)

    按批次处理list数据的两种方法 主要应用于list存储数据过多,不能使list整体进行其余操作 Java | 复制 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...

  2. ctf百度杯十二月场what_the_fuck(一口盐汽水提供的答案)

    目录 漏洞利用原理 具体利用步骤 漏洞利用原理 read(, &s, 0x20uLL); if ( strstr(&s, "%p") || strstr(& ...

  3. Python 名称空间与作用域、闭包与装饰器

    Python 的名称 Python 的名称(Name)是对象的一个标识(Identifier).我们知道,在 Python 里面一切皆对象,名称就是用来引用对象的.说得有点玄乎,我们以例子说明. 例如 ...

  4. Spring Data Jpa 初探

    Spring Data 项目的目的是为了简化构建基于 Spring 框架应用的数据访问计数,包括非关系数据库.Map-Reduce 框架.云数据服务等等;另外也包含对关系数据库的访问支持. 下载网址: ...

  5. flask建立数据模型数据类型

    https://blog.csdn.net/happyanger6/article/details/53947162 https://blog.csdn.net/happyanger6/article ...

  6. Android技巧小结之新旧版本Notification

    最近开发用到了通知功能,但有几个地方老是提示deprecated,然后就找了篇文章学习了下新旧版本的不同. Notification即通知,用于在通知栏显示提示信息. 在较新的版本中(API leve ...

  7. Spring Boot 编写入门程序

    1. SpringBoot 入门 快速创建独立运行的Spring项目以及与主流框架集成; 使用嵌入式的Servlet容器,应用无需打成WAR包; starters自动依赖与版本控制; 大量的自动配置, ...

  8. Django 框架之视图函数(Views)

    http请求中产生的两个核心对象: http请求: HttpRequest对象 http响应: HttpResponse对象 所在位置: django.http HttpRequest 对象的属性和方 ...

  9. Cache与主存之间的全相联映射,直接映射和组相联映射的区别

    2017-02-22 注:本文并非原创,来自百度文库,只是觉得写得较好,故分享之.若是某人的知识产权,望告知!谢谢 1.高速缓冲存储器的功能.结构与工作原理 高速缓冲存储器是存在于主存与CPU之间的一 ...

  10. 怎样在QML应用中创建一个Context Menu

    我们在非常多的系统中看见能够在屏幕的一个地方长按,然后就能够依据当前显示的上下文弹出一个菜单. 菜单中能够有一些选项,比方删除,改动该项.这样的一般在ListView或GridView中常见.今天,我 ...