SVN+MAVEN项目打包
题记:项目打包bash脚本
环境准备
maven版本:3.5.2
mvn -v #查看maven的版本信息
svn版本:1.4.0
svn --version #查看svn版本信息
1、update_and_package.sh脚本代码如下:
#!/bin/sh if [ $# == ]; then
echo "[INFO] start update svn open..." echo " ------------------------------------------------------------------------" cd /home/hostname/webapps/project_name svn update echo "[INFO] success update svn open..." echo " ------------------------------------------------------------------------" echo "[INFO] start maven" if [ "$1" == "test" ]; then
mvn test
fi if [ "$1" == "install" ]; then
mvn clean package -Dmaven.test.skip=true
fi if [ "$1" == "package" ]; then
mvn package -Dmaven.test.skip=true
fi if [ "$1" == "clean" ]; then
mvn clean
fi
else
echo "Useage: "
echo " ./update.sh test Test the maven project."
echo " ./update.sh install Install the maven project."
echo " ./update.sh package Package the maven project."
echo " ./update.sh clean Clean the maven project."
echo " ./update.sh compile Compile the maven project."
fi
###注意:脚本将项目打包成jar包
2、rsync_project.sh 更新并执行jar包
#!/bin/bash
ARG=$
VERSION=$
date2=`date +%Y%m%d` if [ -z $ARG ];then
echo "Please input you operation,such as update"
exit
fi case $ARG in update)
mkdir /home/hostname/project_name/$date2
rsync -avz --delete 192.168.1.10::home/hostname/webapps/project_name/target/manage-0.0.-SNAPSHOT.jar /home/hostname/webapps/$date2/manage-0.0.-SNAPSHOT.jar
cp -f /home/hostname/project_name/$date2/manage-0.0.-SNAPSHOT.jar /home/hostname/project_name/webapps/manage-0.0.1-SNAPSHOT.jar
sh /home/hostname/project_name/bin/stop.sh
sleep
sh /home/hostname/project_name/bin/start.sh
tailf - /home/hostname/project_name/logs/nohup.out
;;
*)
echo "operation time: "$date
;;
esac
3、stop.sh脚本
#! /bin/sh
APP_NAME=project_name.jar
tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Kill Process!'
kill - $tpid
fi
4、start.sh
#! /bin/sh
JAVA_HOME=/opt/jdk1..0_91
if test -n "${JAVA_HOME}"; then
if test -z "${JAVA_EXE}"; then
JAVA_EXE=$JAVA_HOME/bin/java
fi
fi
if test -z "${JAVA_EXE}"; then
JAVA_EXE=java
fi
nohup $JAVA_EXE -jar /home/hostname/project_name/webapps/project_name.jar --spring.config.name=application-outter.properties --spring.config.location=/home/hostname/project_name/webapps/application-outter.properties --logging.config=/home/hostname/peoject_name/webapps/log4j2.xml > /home/hostname/project_name/logs/nohup.out &
SVN+MAVEN项目打包的更多相关文章
- maven 项目打包 及window下部署到tomcat
1.maven项目打包 2.将war文件拷贝到tomcat目录webapps下(不要再建目录)3.将必要的jar文件拷贝到tomcat目录libx下 war包 或jar 包 会生成到项目所在路径 的t ...
- Storm系列(三):创建Maven项目打包提交wordcount到Storm集群
在上一篇博客中,我们通过Storm.Net.Adapter创建了一个使用Csharp编写的Storm Topology - wordcount.本文将介绍如何编写Java端的程序以及如何发布到测试的S ...
- maven项目打包运行出错问题汇总
maven项目打包时总会出现莫名其妙的错误,现总结一下. 打包方式:在maven项目底下运行cmd,输入mvn clean package,会自动按pom.xml的配置打成包.使用java -jar ...
- eclipse下将maven项目打包为jar(1.不带第三方jar,2.带第三方jar)
由于项目需要讲maven项目打包为jar包,由于之前没类似经验,百度找例子走了不少弯路,这边随手记录下,网上说的 开发工具:eclipse jar包管理:maven 一般打包出来的jar包分为两种 一 ...
- maven 项目打包到本地仓库并且推送到私服仓库
首先进入到项目文件夹下,然后进入cmd命令窗口,第一步先clean一下,输入命令 mvn clean. 第二步打包到本地,输入命令mvn clean package -Dmaven.test.skip ...
- 怎么将maven项目打包成war包
问题:我在eclipse上能运行,然后我想将这个maven项目打包成war然后放到另外一台机子上(其实是手动放在tomcat的webapp目录中),提供外部访问.现在问题是,一直maven项目打包一直 ...
- 如何将maven项目打包成可执行的jar
如何将maven项目打包成可执行的jar 分类: maven2010-12-17 10:18 10411人阅读 评论(2) 收藏 举报 jarmavenassemblyjava 方法一:将项目及所依赖 ...
- eclipse工具maven项目打包文件不是最新修改的
1.问题描述:maven项目,完成一些功能开发后,在进行打包更新服务器系统时,本地eclipse工具对文件打成jar包操作,更新到服务器上没有修改的效果,包括打包整个工程为一个war包,也是有同样问题 ...
- maven项目打包成可执行的jar
编写功能类: package com.hpay.FileToZkUtil; import java.io.File; import java.io.FileInputStream; import ja ...
随机推荐
- python 2.7.5 获取文本关键字符所在行
#!/usr/bin/env python #-*- coding: UTF- -*- from __future__ import print_function import time,os,sys ...
- deep_learning_Function_ lambda函数详解
这里总结了关于 Python 中的 lambda 函数的“一个语法,三个特性,四个用法”. 一个语法: 在 Python 中,lambda 函数的语法是唯一的.其形式如下: lambda argume ...
- PHP的八种数据类型
PHP 支持8种基本的数据类型. 四种标量类型: boolean (布尔型) integer (整型) float (浮点型, 也称作 double) string (字符串) 两种复合类型: arr ...
- sql 180. 连续出现的数字
编写一个 SQL 查询,查找所有至少连续出现三次的数字. +----+-----+| Id | Num |+----+-----+| 1 | 1 || 2 | 1 || 3 | 1 || 4 | 2 ...
- Linux用户影子文件——shadow
Linux使用不可逆的加密算法(如MD5,SHA1等)来加密口令.和/etc/passwd类似,/etc/shadow文件中每条记录用冒号“:”分隔,形成9个域,格式如下所示: username:pa ...
- SpringData JPA 在解析实体类字段时驼峰自动添加下划线问题
参考地址:https://my.oschina.net/javamaster/blog/2246886 SpringData JPA 使用的默认命名策略是: ImprovedNamingStrateg ...
- 第七章 路由 77 路由-使用children属性实现路由嵌套
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
- python面向对象基础(二)反射
1.反射 前言 如何动态输入一个模块名,可以随时访问到导入模块中的方法或者变量? in= input(“请输入你想导入的模块名:”) CC = __import__(in) #這种方式就是通过输入字符 ...
- typescript枚举字符串型不能使用函数问题
数字型枚举 enum OrderStatus { Start = 1, Unpaid, Shipping, Shipped, Complete } 或者 enum OrderStatus { Star ...
- SpringBoot AOP介绍
说起spring,我们知道其最核心的两个功能就是AOP(面向切面)和IOC(控制反转),这边文章来总结一下SpringBoot如何整合使用AOP. 一.示例应用场景:对所有的web请求做切面来记录日志 ...