搭建好jenkins自动化构建之后,点击立即构建,即可将svn服务器上的源码自动编译构建,并打成war包,然后将这个war包以及编译好的项目复制到指定服务器的tomcat容器里,当svn服务器的代码有改动的时候,不用再重新编译、打包、部署和重启服务器,jenkins将自动将更改后的代码进行发布、部署、运行。

  自动化构建之前,服务器上要装好JDK、maven和tomcat,方法自行百度,安装好jdk,配置环境变量就ok了(maven和tomcat不用配置环境变量,我用的版本是jdk1.8,maven3.3.3,tomcat7)。

步骤如下:

  1. Jenkins,可以去官网下载,不同的版本上可能会有一些差异,我这里使用的是2.20版本的。直接下载war包就可以了,放到tomcat的webapps目录下,运行tomcat就行。
  2. 启动tomcat之后,在浏览器输入地址进行访问:http:192.168.xxx.128:8080/jenkins,初次访问的页面如图:去到这个目录下查看这个文件,就知道登录密码了:
  3. 输入密码之后会提示选择安装的插件,第二次登录的时候就没有这个页面了:推荐选择前者,然后等待安装完成。
  4. 安装完成后会提示创建一个新的用户,输入相应的信息,点击Save and Finish
  5. 安装成功了,开始jenkins之旅吧!
  6. 贴一个jenkins的主页面,之后需要进行一些配置。
  7. 点击“系统管理”,右边黄色字体的内容可能会提示字符编码不对,没关系,改一下tomcat的编码集就OK了。打开tomcat根目录,进入conf文件夹,使用vim server.xml对其配置文件进行修改,找到Connector标签,在其中添加URIEncoding="UTF-8",然后保存退出,重启tomcat再次登录jenkins后就不会有那个黄色的提示了。
  8. 进行JDK的配置,点击“系统管理”->“Global Tool Configuration”,点击新增jdk,别名可以随便取,取消自动安装,可以使用服务器本机的jdk,在JAVA_HOME那里写上绝对路径就可以了,如果路径不对或者找不到jdk,jenkins会自动提示。
  9. 同理,将maven也配置好。
  10. 在进行新建项目之前还有一些步骤需要操作,不然仍无法新建maven项目。点击“系统管理”->“插件管理”,点击“可选插件”,在过滤处输入maven,将“Maven Integration plugin”选中,点击直接安装。
  11. 安装成功后点击返回首页。
  12. 点击创建一个新任务
  13. 选择“构建一个maven项目”,输入项目名称,点击OK
  14. 项目的配置里边只更改了少部分,其他的都默认就可以了,首先是“源码管理”,我这里用的是svn上的源码,使用的svn是阿里的阿里云code,填上svn地址就可以了,如果需要身份验证的也可以在上面填写,如果地址不对jenkins也会提示错误。
  15. 然后是“构建触发器”,我选择的是默认的。
  16. 然后是“Built”,构建的时候执行了一个全局的命令,当然也可以什么都不写,构建的时候我执行了一下maven的clean和install
  17. 还有一些其他的功能,例如构建的时候执行一个全局的linux命令,构建完成后发送email通知等等,本着简单的原则,这里都没有做设置。上面说的东西改完之后,点击“保存”,然后回到主页面,就会看到刚才新建的项目,点击项目名右侧的下拉箭头,点击“立即构建”。
  18. 点击左侧菜单栏下方的进度条,可以查看构建过程的控制台输出。
  19. 第一次构建的时候需要下载maven依赖的jar包和一些必要插件,所以可能会需要一点时间,去喝杯咖啡吧~回来一看还没有好,唉~再去吃根香蕉吧~
  20. 漫长的等待,它终于好了!注意这里的这个地址,jenkins将编译打包后的war文件放在了这个目录下面:没问题,不止war包,编译好的项目也放到了该目录下,到此为止,就使用jenkins将svn仓库里的代码编译并打包好了,下面需要做的就是将这个打包后的文件部署到tomcat里边。
  21. 回到主页面,点击项目名称右边的下拉箭头,选择“配置”sorry,忘了一点,在使用jenkins部署项目的时候,还需要一个插件,先进到“系统管理”->“管理插件”页面,同理,在“可选插件”标签下,在过滤出输入:deploy,选择下面的“Deploy to container Plugin”,点击“直接安装”,等待安装完成。
  22. 在部署之前,还有一些必要的操作,需要对服务器的tomcat进行一些设置,进入tomcat的conf目录,对tomcat-users.xml进行编辑,在tomcat-users标签下添加如下内容,username和password根据自己填写,后期需要用到这个,然后保存退出,重启tomcat
  23. 重启完tomcat之后,进入jenkins里,对刚才的项目再次进行一些配置,点击“构建后操作”,进行一些配置:

    对一些参数进行说明:

    WAR/EAR files:上面自动化编译后生成的war包所在的路径,注意格式和名称,可以去刚才生成war包的目录看一下再来这里填写

    Context path:项目部署完成之后的访问路径,例如:http://192.168.1.1:8080/wb,这个可以根据自己的需要随意填写。

    Manager user name和Manager password就是上一步在tomcat里配置的用户名和密码,填写在这里就可以了。

    Tomcat URL:tomcat所在服务器的地址,例如http://192.168.201.128:8080/

    这些东西填好之后就可以保存了,保存完之后回到主页面,再进行一次构建。

  24. 这次是不是比第一次构建的快多了,而且你也会发现控制台输出的信息,已经将构建好的war包部署到指定的容器里了
  25. 去到指定的部署目录下看看,有没有东西部署过来,进来一看,哇,真的过来了诶,赶紧访问一下试试!!!在浏览器里输入服务器地址已经项目地址访问,搞定,木问题啊~
  26. 全文结束,以后当再次签入代码的时候,点击一下“立即构建”就可以了,再也不用重新编译、构建、部署、重启服务器什么的了,当然你也可以把“构建触发器”设置成当仓库代码发生改变的时候进行构建,那样你会更加省事,也可以设置成每天晚上0点进行构建或者每隔15分钟进行一次构建,看需求了。

Jenkins+Tomcat+svn+maven自动化构建简单过程的更多相关文章

  1. jenkins+docker 持续构建非docker in docker jenkins docker svn maven

    工欲善其事必先利其器,为了解脱程序员的,我们程序员本身发明了很多好用的工具,通过各种工具的组合来达到我们想要的结果 本文采用jenkins docker svn maven作为相关工具,项目sprin ...

  2. Java-Maven-Runoob:Maven 自动化构建

    ylbtech-Java-Maven-Runoob:Maven 自动化构建 1.返回顶部 1. 自动化构建定义了这样一种场景: 在一个项目成功构建完成后,其相关的依赖工程即开始构建,这样可以保证其依赖 ...

  3. 【第十四篇】- Maven 自动化构建之Spring Cloud直播商城 b2b2c电子商务技术总结

    Maven 自动化构建 自动化构建定义了这样一种场景: 在一个项目成功构建完成后,其相关的依赖工程即开始构建,这样可以保证其依赖项目的稳定. 比如一个团队正在开发一个项目 bus-core-api, ...

  4. Tomcat+Jenkins+SonarQube+SVN+Maven 集成自动化环境搭建(Windows10环境下)

    说在前面的话: 从接到任务到完成共用了7天的时间.正常人用不到这个时间. 此时的功能表现是: 登录本地JenKins对项目进行构建,能够自动从SVN读取最新代码并按照Maven项目构建,构建完成能够自 ...

  5. Windows版Jenkins+SVN+Maven自动化部署环境搭建【转】

    前言 因今年公司新产品线较多,为了降低耦合,达到业务分离.重用,提高内部开发效率的目的,采用了基于服务组件.前后端分离的架构体系.与之前传统单应用架构相比,系统部署.配置更加复杂,为了能够频繁地将软件 ...

  6. Jenkins实现SVN+Maven+Java项目的持续集成

    Jenkins 2.46.1 Centos 7.3 JDK 7 安装jdk/maven/svn 在Jenkins所在的Linux机器安装jdk和maven,步骤就不说了,下面是环境变量: export ...

  7. 浅谈maven自动化构建工具

    转载https://blog.csdn.net/zxm1306192988/article/details/76209062 Maven是什么[what] 1.Maven 是 Apache 软件基金会 ...

  8. Jenkins+Ant+TestNG+Testlink自动化构建集成(完整版)

    这段时间折腾自动化测试,之前都是在Eclipse工程里面手工执行自动化测试脚本,调用Testlink API执行测试用例,目前搭建Jenkins自动化构建测试的方式,实现持续构建,执行自动化测试. 硬 ...

  9. Jenkins+Ant+TestNG+Testlink自动化构建集成

    这段时间折腾自动化测试,之前都是在Eclipse工程里面手工执行自动化测试脚本,调用Testlink API执行测试用例,目前搭建Jenkins自动化构建测试的方式,实现持续构建,执行自动化测试. 硬 ...

随机推荐

  1. 【笔记】归纳js getcomputedStyle, currentStyle 以及其相关用法

      好吧,鉴于前端则个行业知识宽度广而深,早期看过高程介绍过的获取元素计算后的最终样式(浏览器显示的最终样式)的方法现在也忘得七七八八了 于是百度了一下,看了一下大神张鑫旭的博客,这里写个随笔记录一下 ...

  2. 玩转SSH(五):Struts + Spring + MyBatis(注解版)

    本文将在 玩转SSH(四):Struts + Spring + MyBatis 的基础上进行一些小的改动,将原本是 xml 配置方式的项目,改成注解的配置方式. 要将项目改成注解方式,一般是将在 Sp ...

  3. Oracle常用数据字典

    1.查看所有存储过程.索引.表格.PACKAGE.PACKAGE BODY select * from user_objects; 2.查询所有的Job select * from user_jobs ...

  4. 关于WdatePicker.js的结束时间大于开始时间

    简单笔记 : WdatePicker.js 要使结束时间大于开始时间只要在线束时间的 minDate:'#F{$dp.$D(\'stimeParam\')}' 即可:不多说 详细代码如下: <t ...

  5. poj 2155 Matrix (二维树状数组)

    题意:给你一个矩阵开始全是0,然后给你两种指令,第一种:C x1,y1,x2,y2 就是将左上角为x1,y1,右下角为x2,y2,的这个矩阵内的数字全部翻转,0变1,1变0 第二种:Q x1 y1,输 ...

  6. 博客搬到CSDN了

    新博客地址: http://blog.csdn.net/enlangs

  7. WPF集合控件实现分隔符(ItemsControl Splitter)

    在WPF的集合控件中常常需要在每一个集合项之间插入一个分隔符样式,但是WPF的ItemsControl没有相关功能的直接实现,所以只能考虑曲线救国,经过研究,大概想到了以下两种实现方式. 先写出Ite ...

  8. 少走弯路——Android对话框AlertDialog.Builder使用方法简述

    android的自定义对话框,不需要通过继承的方式来实现,因为android已提供了相应的接口Dialog Builder ,下面就是 样例: new AlertDialog.Builder(this ...

  9. Tensorflow学习笔记---0--TensorBoard

    运行mnist_with_summaries学习TensorBoard时,由于需要GPU支持,运行窗口报错:Couldn't open CUDA library cupti64_80.dll 解决办法 ...

  10. node.js系列(实例):原生node.js实现静态资源管理

    /** * node入门之综合案例(一):简易路由 * @Author : by Ghost * @Date : 2016/07/11 * @Description : * 1.引入以下模块 * ht ...