jenkins+svn+tomcat部署war包
svn是版本控制器,是提供一个版本库让程序员把项目提交上去,每一次更新代码提交后都会记录
jenkins是持续部署的工具,是让项目自动部署发布出去的工具,当项目代码发生改变时就需要重新打包成war包,人为操作麻烦,所以需要jenkins工具
tomcat是应用服务器,是跑java的网页代码JSP,具体是JSP解析成JAVA源代码,再解析成java类,再由JVM执行
思路是:由eclipse写项目,推送到svn上去,由jenkins去svn拉取代码,再由maven把代码打包成war包,再部署到tomcat宫用户访问
首先安装svn服务器,查看https://www.cnblogs.com/-mrl/p/8980244.html 此处注意把能访问svn服务器的用户账号密码记下
再把eclipse项目推到svn上去,由于eclipse默认只支持git,所以需要先安装subversion插件,,查看https://blog.csdn.net/u012453843/article/details/64624383
安装插件后重启eclipse,由于是第一次推送项目到svn,所以需要建立svn服务器地址,,查看https://jingyan.baidu.com/article/ed15cb1baee2aa1be36981bc.html
搭建jenkins服务器,并配置号jre运行环境以及maven打包工具,在/etc/profile.d/jenkins_tools.sh文件写入
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
export TIME_STYLE='+%Y/%m/%d %H:%M:%S'
export MAVEN_HOME=/usr/local/maven
export PATH=${MAVEN_HOME}/bin:$PATH
再配置jdk

再配置maven

然后在jenkins里面新建项目
建完后点开项目,选择配置,源码管理就是让jenkins去svn拉取项目代码,此处地址是svn服务器地址,账号密码是允许访问svn的账号密码

配置构建步骤,这个是让jenkins拉取代码后用maven打包代码成war包

然后选择打包后要把war部署到tomcat应用服务器上,此处需要tomcat服务器地址,以及tomcat账户密码
在conf/tomcat-users.xml里面添加以下代码,定义tomcat_user用户
由于第一次安装完tomcat是无权访问manager webapp页面,所以tomcat_user用户配置了也无法验证是否可用,所以保险起见还要配置访问manager webapp页面权限,查看https://www.cnblogs.com/wuhenyan/p/6419475.html
<role rolename="manager-gui"/>
  <role rolename="manager-script"/> 
  <role rolename="manager-jmx"/>
  <role rolename="manager-status"/>
  <user username="tomcat_user" password="123456" roles="manager-gui,manager-script,manager-jmx,manager-status"/>

完后返回项目界面,选择立即构建

这时jenkins就会去拉取代码,并且打包,并且部署到tomcat应用服务器上去
打包期间可以通过查看控制台看下正在执行的操作过程,由于第一次打包,所以需要去maven仓库下载插件,速度缓慢

当看见输出,,Maven打包时报Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2:war解决方案
查看https://blog.csdn.net/qq_33548914/article/details/79458497 解决问题后再次打包就成功了,同时也把war部署到tomcat应用服务器上了,可以去tomcat上面的webapps下面看有没有对应的war包(默认目录),这时就可以通过tomcat的访问地址查看项目了
注意:以上的操作完成后,还是要手动构建项目,,需要实现的目标是当程序员写完代码提交到svn上去时,可以触发触发器,让jenkins主动去svn拉去代码,然后打包,然后发布
所以需要在以下页面中配置字段,即当访问这个页面的时候,jenkins就会自动工作,访问地址是jenkins访问页面首页后加上/job/maoye/build?token=mao_token

所以还有一项工作就是,当从eclipse提交代码到svn后要自动访问以上地址,来使jenkins主动工作,未完待续
jenkins+svn+tomcat部署war包的更多相关文章
- Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包
		
Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包 >>>>>>>>>>>& ...
 - Docker容器Tomcat部署war包
		
在docker容器中使用tomcat部署war包主要包括四个步骤,创建tomcat容器.上传war包到容器.重启容器.访问应用. 1.创建tomcat容器 使用docker run -d --nam ...
 - 记录centos7下tomcat部署war包过程
		
记录centos7下tomcat部署war包过程 1.官网下载tomcat安装包.gz结尾的 2.上传到/usr/local/ ,并解压到tomcat目录下 3.进入tomcat/bin目录,运行./ ...
 - springboot+vue前后端分离,nginx代理配置 tomcat 部署war包详细配置
		
1.做一个小系统,使用了springboot+vue 基础框架参考这哥们的,直接拿过来用,链接https://github.com/smallsnail-wh/interest 前期的开发环境搭建就不 ...
 - 通过Jenkins调用自动部署war包及jar包到服务器上的Shell脚本
		
1)部署war包#!/bin/bashif [ id>0];then echo"stopproject" kill −9 idelse echo "project ...
 - tomcat部署war包
		
部署步骤 1.下载tomcat 直接在网上下载即可,随便把包下到一个地方 下面文中的xxx均代表tomcat的安装目录 2.将java工程导出war包 在intellij idea的执行左侧选中t ...
 - tomcat部署war包启动后请求无响应,一直报404
		
刚刚碰到一个坑,本地Eclipse启动了tomcat,调用接口就是404,一直怀疑是url问题,改来改去还是404.最后发现还真是url问题,问题不在接口路径,而是项目名.因为接口路径用的是RESTf ...
 - Tomcat:tomcat部署war包配置SSL访问
		
Linux-CentOS7部署 war放置 war放到tomcat的webapps目录内 修改配置 修改tomcat的server.xml文件 HTTP: 找到Connector元素,修改端口 HTT ...
 - tomcat:利用tomcat部署war包格式的项目
		
配置jdk环境变量, 配置TOMCAT_HOME 变量, 将war包放入webapps中. 运行tomcar-bin文件夹中的startup.bat. tomcat会自动解压war包. 进入项目:
 
随机推荐
- 【Hibernate学习】 ——ORM(四)再次认识实体继承
			
在信用办时.做失信.守信.黑名单这一块的时候.先把原来的需求看了看.紧接着就開始设计实体,这一块大部分都是同样的信息,所以就设计了一个实体,而且用一个状态标识出来是失信.守信还是黑名单. 在之后的改动 ...
 - Corona 不同设备分辨率适应
			
移动平台下,不同设备的宽高比不同,那么必然存在与游戏设计时的宽高比不一致的情况,Corona的解决方案是定义了一个虚拟的屏幕高宽,比如1024*768,然后在不同设备上通过定义的适应模式去调整这个虚拟 ...
 - Python内置的字符串处理函数
			
生成字符串变量 str='python String function' 字符串长度获取:len(str) 例:print '%s length=%d' % (str,len(str)) 连接字符 ...
 - BZOJ 2048 2009国家集训队 书堆 数学算法
			
题目大意:经典的物理上的桌边堆书问题,初中物理老师以前还讲过,只是仅仅记住了结论. . . 没关系,简单证明一下就好 首先我们设由上至下第i本书比它以下那本书多伸出去的长度为a[i],前缀和为s[i] ...
 - Web实际应用中的编码问题
			
一. JSP页面有关编码的介绍 ---->>假设不做不论什么设置,页面默认ISO-8859-1编码(Western European). ---->><%@ page c ...
 - hdu 1242(BFS+优先队列)
			
Rescue Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Subm ...
 - bzoj 3231  [ Sdoi 2008 ] 递归数列 —— 矩阵乘法
			
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3231 裸矩阵乘法. 代码如下: #include<iostream> #incl ...
 - Html5 ajax的跨域请求
			
1.XMLHttpRequest升级版已经实现了跨域请求.不过需要在后台设置:header("Access-Control-Allow-Origin:http://www.a.com&quo ...
 - layui框架 各种小结
			
首先项目前端采用的是bootstrap和layui弹窗,验证,表格用的是bootstrapTable layui官方地址:http://www.layui.com/ 文档:http://www.lay ...
 - 10.Flask-上下文
			
1.1.local线程隔离对象 不用local对象的情况 from threading import Thread request = ' class MyThread(Thread): def ru ...