首先我们在我们的服务器上安装好svn和maven

这里在前两步骤基本上没有啥问题,主要就是在Jenkins的步骤我弄了好长时间,这里记录一下

Jenkins的问题我是在这个网址解决的:http://blog.csdn.net/pein_zero/article/details/52597615

还有一些其他的问题:http://www.whatled.com/post-1922.html

中间构建项目的时候也失败了,说是缺少某个插件。安装上就好了

就是在装插件的时候老是装不上,我又没有看下面的报错,那只还可以这样做,就是把报错中的信息链接

复制到浏览器上重新下载一下,然后在插件管理中,使用高级模式,把下载下来的插件上传上来进行安装就可以了

前言

     在安装之前,我想说明一下本文的目的,jenkins的一款持续集成工具,
     它可以做的事情很多,其中一个主要的功能就是简化部署流程
   
     回想一下我们的发布流程:
          1.本地把项目打包
          2.通过FTP等工具,传输到服务器
          3.关闭tomcat,把打包的项目放到webapp目录下
          4.启动tomcat


     如果每次都这么搞的话,不仅慢,而且容易出错。
   
     有了jenkins以后,发布流程可以是这样:
          1.用户在jenkins上点击某个按钮进行发布
          2.jenkins收到发布命令
          3.jenkins从SVN上把源代码download下来
          4.jenkins根据你设置的mvn命令进行打包
          5.jenkins把你打包的好的war工程传输到tomcat的webapps目录下
          6.tomcat启动
 
     对于程序员而言,只要做两件事:
          1.在jenkins上配置某个项目的部署流程
          2.在jenkins上点击某个项目的部署按钮,进行一键部署

     

     实际上,配置往往只做一次,其余的时候,你只要一键部署就可以了


一、安装jenkins



       1.下载JENKINS


              首先去jenkins官网下载jenkins,官网有两个下载的选择:


 
              如果是公司使用,建议选择左边的。
              如果是个人使用,可以使用右边的


              如果要下载安装版本,点击下拉箭头,windows是exe,linux是rpm包
              如果要下载war包,直接点击,不要点下拉箭头,我下载的是war包


             





 
       2.设置JENKINS_HOME
              下载完成以后,最好先设置JENKINS_HOME;
              否则,对于windows系统,会默认装在C盘
              linux系统不清楚默认在哪里
              但是你设置了以后,就会在你想要的位置,生成jenkins的东西
              关于设置HOME,跟设置JAVA_HOME一样,windows就不说了,linux的话,也是跟JAVA一样,修改/etc/profie文件即可


       3.启动JENKINS
              使用war包的同学跟其它工程一样,放到tomcat下,启动tomcat即可。
              使用安装包的同学,windows下,在服务中启动,跟mysql、oralce服务的启动是一样的,linux的同学自行研究


              启动tomcat时会报错:
              

              这是因为jenkins不知道从什么时候开始,把http访问改成了https,但war包的配置文件却没有改,
              不过这不影响你启动和访问,在后面的操作中,我们会改


       4.访问JENKINS


             在浏览器中输入http://127.0.0.1:8080/jenkins,就进入到jenkins了,具体ip和端口,根据你实际的环境来
              
             首先是输入初始密码,这个有提示,跟着提示找到文件,找到密码,输入即可
 
             其次就是进入插件选择页面:
              

              我选择了Skip Plugin Installations,我跳过了插件的初始化,事实上,我并不想跳过。
              如果不跳过,jenkins是有一个让你安装推荐插件的选项的。
              
              但是因为启动的那个异常,jenkins把获取插件的地址从http改成了https,而war包没有改
              导致你点击“推荐插件下载”的按钮时,根本没用。
              
              所以只能跳过了,后面我们可以自己装插件
 
              
              接下来就是创建一个admin用户,注意,创建完之后,之前的admin帐号会消失,初始密码的文件也不复存在了
              所以,你这里输入的用户名,可以就是 admin


              创建完成以后,就完成了Jenkins的安装和启动

二、安装插件


       1. 修改连接地址


              左侧点击系统管理,右侧选择管理插件,
              

               
              选择“高级“面板:
              
 
             

              拉下来,把http,改成https,点击“提交”,再点击“立即获取” 
              




 
     
2.安装MAVEN插件
              为什么要安装maven插件?你点一下新建,是不是下面这个图
              


              如果之前你用过别人的jenkins的话,旧版的这里是有个创建maven 2/3项目,这么一个选项的,新版这里也是能选择创建maven项目的
              你没有,是因为你没有安装maven插件,所以要安装maven插件,这样才能构建maven项目

              还是,系统管理——插件管理——可选插件
              这个时候,你应该是可以看到可选插件列表了,因为之前的操作,我们已经正确的修改了站点的url


              在过滤中,输入maven,找到maven integration plugins:
              

 
 
              勾选,安装,等待一些时间以后,你会发现安装出错了
              
              不要紧,看详细信息
              

              大致的意思就是,文件的签名验证不正确,不管它,注意看这个红色的路径。找到这个文件,打开它
              

 
            
把这个路径复制下来,放到浏览器,就可以把这个插件下载下来。

 
            
我的建议是,在本地建一个jenkins的关于maven插件的目录,把跟maven相关的插件都放到这个目录下
 
            
 
          

 
            
其它几个插件也一一找到对应的文件,找到url,下载
 
            
然后手动上传插件。上传插件的在:系统管理——管理插件——高级,你可以看到上传插件的地方
 
            

 
            
注意,上传的顺序,要跟报错的顺序一样,因为这些插件都是有依赖的先后顺序的
 
             不过即使顺序错了也没关系,系统会提示你的:
 
            


 
 
            
安装完毕以后,你就可以创建maven项目了
 
            

       3. 安装SVN插件
 
            
安装SVN插件的方式跟安装Maven插件的方式是一样的,SVN插件的名字叫做:Subversion Plug-in
 
             安装完SVN后,你在新建项目的时候,源码管理这里就多出一个Subversion的选项
 
            

 
     
4. 安装Deploy插件
 
            
安装Deploy插件的方式跟安装Maven插件的方式还是一样的,Deploy插件的名字叫做:Deploy to container Plugin

               安装完SVN后,你在新建项目的时候,构建后操作这里,下拉选项里会多出一项Deploy war/ear to a container
 
            


. 配置JDK和MAVEN
              在创建项目之前,先要配置JDK和Maven
              点击,系统管理——Global Tool Configuration  
              

 
            
仿照下面的图配置就可以
              

              
               
              仿照我上面的方式,写入你自己的配置就可以


 
       2. 创建构建项目
 
            
废话不多说了,仿照我下面的配置就可以了  
              

              
     
         这里说明下,
            
 
            
第一个是SVN的地址,
               第二个是Credentials,其实就是你的SVN帐号和密码,一开始这里肯定是没有的,需要你点击add添加
              

     
        
把你的SVN帐号和密码加进去就好了
              
              

               
              

              

              

              这里需要说明下,构建后操作,把通过maven命令打好的war包,copy到tomcat中,
              这要求tomcat开启热部署,说白了就是在tomcat的conf目录下的tomcat-users.xml中加入tomcat的用户密码
              

              

              上面面这段话,你可以完全照抄,当然用户名和密码根据你自己的需要来配置
              这里设置的用户名和密码,必须和你填入上面Deploy to cotainer板块中的Manager user name和password一致
              另外,关于Deploy插件,虽然写着只支持到tomcat7.x,但实际上,8.x的tomcat它照样可以支持

              

       3. 开始构建
            

              至此,一个构建项目创建完毕,赶紧点一下构建按钮试试吧:
 
             
              
              




变更:上面的方式,最后的部署采用的是tomcat的热部署,这种方式有一个极大的弊端,就是发布多次之后,内存会持续上涨。
所以这并不是一种好的方式。
一种更加好的方式是使用脚本,将tomcat关闭,然后把webapps下的旧的部署应用删除,再把新的war包放过来,然后启动


所以,我们这里需要用到另外一个插件:PostBuildScript:
只要把你自己写好的shell脚本放进来就可以了。
当然这里需要你对shell编程有一些了解


关于这个deploy.sh的实现,大家可以参考这篇文章:http://www.linuxidc.com/Linux/2016-01/127258.htm

Jenkins+svn+maven的更多相关文章

  1. Jenkins +svn +maven +tomcat+ ansible 自动化批量部署

    Jenkins +svn +maven +tomcat+ ansible 自动化批量部署 一.部署svn yum install subversion 先创建目录 mkdir /home/svn 创建 ...

  2. Jenkins+SVN+Maven+shell 自动化部署实践

      JAVA环境中利用Jenkins+svn+maven进行自动化部署实践   一. 前言2 1.介绍jenkins2 1.本地项目打包2 2.通过secureCRT工具,手动传输到服务器2 3.然后 ...

  3. 项目持续集成环境(jenkins + SVN + maven + tomcat)

    整体流程 每次SVN上代码有变动,触发自动构建动作,并部署到服务器的tomcat上,具体流程: 1.SVN上提交代码修改 2.maven执行Goals 3.将web工程打成war包 4.关闭服务器的t ...

  4. Jenkins + svn + maven 构建持续集成环境搭建

    Jenkins简介 Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: ...

  5. Jenkins+svn+maven自动部署到tomcat

    jenkins所在主机配置好,jdk,maven,Tomcat 1.配置maven,jdk环境 1) 进入配置界面--->[系统管理]--->[Global Tool Configurat ...

  6. Jenkins+SVN+maven+Tomcat构建自动化集成任务

    Jenkins安装方法详解:https://www.cnblogs.com/lizhe860/p/9901257.html 一.安装maven插件 1.依次进入系统管理→插件管理→可选插件, 找到Ma ...

  7. Jenkins+SVN+Maven+testNG管理项目

    1.登录访问:http://localhost:8080/jenkins 2.系统管理 => 全局工具配置 => ADD JDK  AND  Add Maven 3.安装SVN插件:系统管 ...

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

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

  9. Jenkins+SVN+Maven发布项目

    一.安装jenkins插件 登入Jenkis后,安装几个插件: Maven Integration plugin # 没有这个插件,不能创建maven项目 Subversion Plug-in Pub ...

随机推荐

  1. [转]How to open specific page in the application by clicking on the notification

    本文转自:https://github.com/phonegap-build/PushPlugin/issues/213 问:Hello, I would like to know how can I ...

  2. MMORPG大型游戏设计与开发(客户端架构 part10 of vegine)

    界面是游戏中必不可少的一部分,就算你进入游戏没有看到什么UI窗口,你也不必着急,因为多多少少都会有隐藏着的界面等你去体验.一个好的UI大部分应该归功于设计的人与提供美术支持的人员,因为他们是直接设计U ...

  3. POJ 1066 Treasure Hunt【线段相交】

    思路:枚举四边墙的门的中点,与终点连成一条线段,判断与其相交的线段的个数.最小的加一即为答案. 我是傻逼,一个数组越界调了两个小时. #include<stdio.h> #include& ...

  4. openjudge6047分蛋糕[DP]

    描述 有一块矩形大蛋糕,长和宽分别是整数w .h.现要将其切成m块小蛋糕,每个小蛋糕都必须是矩形.且长和宽均为整数.切蛋糕时,每次切一块蛋糕,将其分成两个矩形蛋糕.请计算:最后得到的m块小蛋糕中,最大 ...

  5. Java面向对象之接口

    什么是接口:接口是一种规范和标准,他们可以约束类的行为,是一些方法特征的集合 语法: [修饰符] interface 接口名 extends 父接口1,夫接口2....... class 类名 ext ...

  6. 虚拟机安装的UBUNTU怎么全屏

    虚拟机下面安装了ubuntu系统,显示的屏幕只有那么一小块儿,不知道如何才能全屏,那么如何全屏呢?且看下面经验. 步骤阅读   百度经验:jingyan.baidu.com 方法/步骤 1 打开虚拟机 ...

  7. 转: Git远程操作详解 (阮一峰)

    说明: 通过这个说明终于把远程操作给搞明白了. http://www.ruanyifeng.com/blog/2014/06/git_remote.html

  8. vmware打开出错,需要打开虚拟化的设置

  9. Js实现简单的省市级联的效果

    需要注意的是当需要动态添加项的时候一定要先var newoption=new Option("项","值");然后再 select.options.add(ne ...

  10. Python快速教程目录(转)

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 怎么能快速地掌握Python?这是和朋友闲聊时谈起的问题. Python包含的内容 ...