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