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包. 进入项目:
随机推荐
- mybatis+mysql返回插入的主键,参数只是提供部分参数
mybatis+mysql返回插入的主键,参数只是提供部分参数 <insert id="insertByChannelIdOpenid" useGeneratedKeys=& ...
- php循环,die/exit脚本执行控制,文件载入及错误控制
循环控制 大部分和c/java同样 for循环 while循环 do while循环 foreach循环(特有) 循环中断 : 1.break: 用于全然停止某个循环,让运行流程进入到循环语句后面的语 ...
- hdu1035 Robot Motion (DFS)
Robot Motion Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tot ...
- VIM 移动
基础 字符移动 k 上移 k h 左移 h l l 右移 j j 下移 你也可以使用键盘上的方向键来移动,但这么做h j k l的存在就失去了意义 之所以使用h j k l来控制方向,其主要目的是让你 ...
- mongoDB学习笔记——安装及启动
WINDOWS环境下: 一.安装 步骤一: 下载MongoDB url下载地址: http://downloads.mongodb.org/win32/ 步骤二: 设置MongoDB程序存放目 ...
- Android shape自定义形状,设置渐变色
<?xml version="1.0" encoding="utf-8"?> <!-- android:shape=["rect ...
- c#调用带有自定义表结构的存储过程
1.新建自定义表结构 CREATE TYPE [dbo].[HBForHBGHDR] AS TABLE( [序号] [int] NULL, [客户编号] [varchar](15) NULL ) GO ...
- tp3.2 复合查询or
tp3.2 复合查询or $where['goods_name'] = array("like","%$q%");$where['goods_sn'] = ar ...
- MSSQL:账号无法删除方案
1.查询 EXEC sp_who 'WIN-GBKBCVTG4CN\Administrator' 返回一个表格,其中有列[spid] 2.删除 kill spid
- Java中last_insert_id的使用
last_insert_id的作用是:在当前表中的主键是自增时,插入一条新记录的同时使用last_insert_id可以获取当前的新记录的主键id. 下面是一个例子: import java.sql. ...