文档章节

linux shell---- maven编译和部署 tomcat脚本

kongjun
 kongjun
发布于 2015/10/20 11:11
字数 241
阅读 880
收藏 5

研究了一下午,写这个脚本。这里做个备份。

#!/bin/bash

#functions

function mavenProject(){
	echo "maven 开始编译项目";
	mvn clean  package -Dmaven.test.skip=true;
}

function startTomcat(){
	
	local DATE=`date '+%Y-%m-%d-%H-%M-%S'`
	local DIR="/data/www/logisticscenter"
	rm -rf ${DIR}/logs/*
        rm -rf ${DIR}/work/*
        rm -rf ${DIR}/temp/*
        rm -rf ${DIR}/conf/Catalina/
	mv ${DIR}/meizu_web/logisticscenter.war ${DIR}/backup/logisticscenter.${DATE}.war;
	cp /data/work/logisticscenter/web/target/logisticscenter.web*.war 
	                                                        ${DIR}/meizu_web/logisticscenter.war;
	if [ ! $? ];then
		echo "maven编译失败,请查看 maven日志做处理";
		exit;
	fi;
	${DIR}/bin/startup.sh;
	echo "等待20秒";
        sleep 20s;
	local SuccInfo=`grep '信息: Server startup in' ${DIR}/logs/catalina.out | sed -n '1p'`
	if [ -n "${SuccInfo}" ];then
		echo "tomcat 启动成功";
	else
		echo "tomcat 启动失败,请检查 tomcat配置或者 maven 编译失败";
	fi;
}

#execute

mavenProject;
PidNum=`ps -ef | grep logisticscenter | wc -l`;
if [ ${PidNum} -eq 1 ];then
	echo "tomcat 已关闭";
else
	PID=`ps -ef | grep logisticscenter | sed -n '1p' | awk -F " " '{print $2}'`;
	kill -9  ${PID};
	if [ ! $? ];then
        	echo "关闭 tomcat 失败,请手动关闭";
        	exit;
	fi;
fi;
echo "tomcat 关闭成功";
startTomcat;


© 著作权归作者所有

kongjun
粉丝 8
博文 98
码字总数 40811
作品 0
杭州
程序员
私信 提问
jenkins自动部署应用到tomcat中,编译后shell脚本的简单示例

  jenkins的安装这里就不做描述了,很简单的 百度搜索一下即可   这里安装的jenkins-2.39-1.1 wget http://pkg.jenkins-ci.org/redhat/jenkins-2.39-1.1.noarch.rpm sudo rpm --import ht...

江湖前辈黄药师
2018/08/13
0
0
OneinStack 1.2 发布,一键 PHP/JAVA 安装工具

这个脚本是使用 shell编写,为了快速在生产环境上部署lnmp/lamp/lnmpa/lnmt(Linux、Nginx/Tengine、 MySQL/MariaDB/Percona、PHP、Apache、Tomcat),适用于CentOS 5~7(包括redhat)、Deb...

lj2007331
2016/03/03
2.7K
10
OneinStack 1.3 发布,一键 PHP/JAVA 安装工具

OneinStack 1.3 发布了,这个脚本是使用 shell编写,为了快速在生产环境上部署lnmp/lamp/lnmpa/lnmt(Linux、Nginx/Tengine/OpenResty、 MySQL/MariaDB/Percona、PHP、Apache、Tomcat),适用...

lj2007331
2016/04/29
2K
11
求分享WEB工程部署到远程Linux机器上的Shell脚本。。。

Linux部署tomcat工程。。。。。 用Shell脚本执行将war包部署到远程Linux机器上面。。。 有类似Shell脚本吗? 求分享。

Java_Coder
2016/03/29
239
3
使用wagon-maven-plugin部署Java项目到远程服务器

在项目开发过程中,经常需要部署代码到开发环境,每天可能有好多次,每次都需要,然后上传到服务器。实际上这些繁琐的步骤可以通过一个Maven插件wagon-maven-plugin来自动完成。 配置Linux服...

jouypub
2018/08/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

【AI实战】手把手教你深度学习文字识别(文字检测篇:基于MSER, CTPN, SegLink, EAST等方法)

文字检测是文字识别过程中的一个非常重要的环节,文字检测的主要目标是将图片中的文字区域位置检测出来,以便于进行后面的文字识别,只有找到了文本所在区域,才能对其内容进行识别。 文字检...

雪饼
今天
16
0
思维导图XMind 8 Pro 绿化方法(附序列号)

按部就班: Step 1 -全新下载最新版本的 Xmind 8(注必须是英文官方的版本,中文代{过}{滤}理网站的版本修改过,无法使用pj); Step 2 -安装完毕后,点击文末的下载按钮下载pj补丁文件包,将...

一只小青蛙
今天
10
0
数据结构(ER数据库)设计规范

表命名规范 表命名的规则分为3个层级,层级之间通过_分割,例如b_r_identity、d_l_identity。规约为: [leavel]_[type]_[name] [leavel] 表示数据库表的层级和功能,分为: s:业务无关的系统...

随风溜达的向日葵
今天
10
0
阿里Sentinel控制台源码修改-对接Apollo规则持久化

https://github.com/alibaba/Sentinel/wiki/%E5%9C%A8%E7%94%9F%E4%BA%A7%E7%8E%AF%E5%A2%83%E4%B8%AD%E4%BD%BF%E7%94%A8-Sentinel 动态规则扩展 https://github.com/alibaba/Sentinel/wiki......

jxlgzwh
昨天
14
0
在Linux系统中创建SSH服务器别名

如果你经常通过 SSH 访问许多不同的远程系统,这个技巧将为你节省一些时间。你可以通过 SSH 为频繁访问的系统创建 SSH 别名,这样你就不必记住所有不同的用户名、主机名、SSH 端口号和 IP 地...

老孟的Linux私房菜
昨天
16
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部