小项目常用的一些本地脚本和服务器脚本

1、windows系统用maven打springBoot自定义启动器jar包,上传到本地中央仓库(需要支持覆盖上传jar)

d:
cd #####
set version=###############
call mvn clean
call mvn source:jar install 
echo %version%

call mvn deploy:deploy-file 
-DgroupId=#####
-DartifactId=#####-configuration
-Dversion=%version%
-Dpackaging=jar 
-Dfile=#####-configuration/target/#####-%version%.jar  
-Dsources=#####-#####configuration-%version%-sources.jar 
-Durl=http://#####/repository/maven-releases/ 
-DrepositoryId=###
echo %version%
pause

2、window上传第三方jar包到公司中心仓库

call mvn deploy:deploy-file -DgroupId=com.wst -DartifactId=wst-common-util -Dversion=1.0.3 -Dpackaging=jar -Dfile=D:\jarupload\wst-common-util-1.0.2.jar -Durl=### -DrepositoryId=###
pause

3、服务器上拉git代码

cd ../git/com-product-plus/com-zysoft-parent
git pull

4、服务器上面用maven打sprignBoot包

cd ${basePath}/git/com-com-product-plus/com-com-parent
mvn clean
export MAVEN_OPTS=-Xmx1g
mvn package -Dmaven.test.skip=true -Dstart-class=com.com.npc.NpcApp
cd ${basePath}/zyrd
#mv com-com-npc-1.0.0-RELEASE-exec.jar com-com-npc-1.0.0-RELEASE-exec.jar.old
cp com-com-npc-${projName}-1.0.0-RELEASE-exec.jar com-com-npc-${projName}-1.0.0-RELEASE-exec.jar.old
cp ${basePath}/git/com-com-product-plus/com-com-parent/com-com-npc/target/com-com-npc-1.0.0-RELEASE-exec.jar com-com-npc-${projName}-1.0.0-RELEASE-exec.jar
cp ${basePath}/git/com-com-product-plus/com-com-parent/com-com-npc/target/com-com-npc-1.0.0-RELEASE-exec.jar com-com-npc-${projName}-move-1.0.0-RELEASE-exec.jar

5、启动springBoot脚本


#!/bin/bash

cd `dirname $0`

PROJ_NAME="qinghai"

CUR_SHELL_DIR=`pwd`
CUR_SHELL_NAME=`basename ${BASH_SOURCE}`
JAR_NAME="com-zysoft-npc-${PROJ_NAME}-1.0.0-RELEASE-exec.jar"
JAR_PATH=$CUR_SHELL_DIR/$JAR_NAME

#JAVA_MEM_OPTS=" -server -Xms1g -Xmx2g -javaagent:/home/zydev/gov_install/jspAgent/JSPAgent.jar"
JAVA_MEM_OPTS=" -Xmx512m  -Dspring.redis.host=127.0.0.1 -Dspring.redis.port=6379 -Dspring.redis.password=redis39"

SPRING_PROFILES_ACTIV="-Dspring.profiles.active=test"
#SPRING_PROFILES_ACTIV=""
LOG_DIR=$CUR_SHELL_DIR/logs
LOG_PATH=$LOG_DIR/$JAR_NAME.log

echo_help()
{
    echo -e "syntax: sh $CUR_SHELL_NAME start|stop"
}

if [ -z $1 ];then
    echo_help
    exit 1
fi

if [ ! -d "$LOG_DIR" ];then
    mkdir "$LOG_DIR"
fi

if [ ! -f "$LOG_PATH" ];then
    touch "$LOG_DIR"
fi

if [ "$1" == "start" ];then

    # check server
    PIDS=`ps --no-heading -C java -f --width 1000 | grep $JAR_NAME | awk '{print $2}'`
    if [ -n "$PIDS" ]; then
        echo -e "ERROR: The $JAR_NAME already started and the PID is ${PIDS}."
        exit 1
    fi

    echo "Starting the $JAR_NAME..."

    # start
    nohup java $JAVA_MEM_OPTS -jar $SPRING_PROFILES_ACTIV $JAR_PATH > ${LOG_DIR}/lognpc.out &

    COUNT=0
    while [ $COUNT -lt 1 ]; do
        sleep 1
        COUNT=`ps  --no-heading -C java -f --width 1000 | grep "$JAR_NAME" | awk '{print $2}' | wc -l`
        if [ $COUNT -gt 0 ]; then
            break
        fi
    done
    PIDS=`ps  --no-heading -C java -f --width 1000 | grep "$JAR_NAME" | awk '{print $2}'`
    echo "${JAR_NAME} Started and the PID is ${PIDS}."
    echo "You can check the log file in ${LOG_PATH} for details."
    tail -f ${LOG_DIR}/lognpc.out
elif [ "$1" == "stop" ];then

    PIDS=`ps --no-heading -C java -f --width 1000 | grep $JAR_NAME | awk '{print $2}'`
    if [ -z "$PIDS" ]; then
        echo "ERROR:The $JAR_NAME does not started!"
        exit 1
    fi

    echo -e "Stopping the $JAR_NAME..."

    for PID in $PIDS; do
        kill $PID > /dev/null 2>&1
    done

    COUNT=0
    while [ $COUNT -lt 1 ]; do
        sleep 1
        COUNT=1
        for PID in $PIDS ; do
            PID_EXIST=`ps --no-heading -p $PID`
            if [ -n "$PID_EXIST" ]; then
                COUNT=0
                break
            fi
        done
    done

    echo -e "${JAR_NAME} Stopped and the PID is ${PIDS}."
else
    echo_help
    exit 1
fi

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值