diff --git a/file-common/src/main/resources/conf/assembly.xml b/file-common/src/main/resources/conf/assembly.xml
new file mode 100644
index 0000000..b1a9db8
--- /dev/null
+++ b/file-common/src/main/resources/conf/assembly.xml
@@ -0,0 +1,38 @@
+
+ assembly
+
+ zip
+
+ true
+
+
+ src/main/script
+ bin
+ 0755
+
+ *.*
+
+
+
+ src/main/resources
+ conf
+ 0644
+
+
+
+ target
+ lib
+
+ *.jar
+
+
+
+
+
+ lib
+ false
+ true
+ runtime
+
+
+
diff --git a/file-web/pom.xml b/file-web/pom.xml
index 49578e1..748d9b3 100644
--- a/file-web/pom.xml
+++ b/file-web/pom.xml
@@ -72,21 +72,55 @@
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
+
+
+
+
org.apache.maven.plugins
maven-jar-plugin
+
+
+
+
+ com.qiwenshare.file.FileApplication
+ true
+ lib/
+
+
+ ./
+
+
+
static/**
+
+
+ maven-assembly-plugin
+
+
+ false
+
+ ../file-common/src/main/resources/conf/assembly.xml
+
+
+
+
+ make-assembly
+ package
+
+ single
+
+
+
+
+
+
org.apache.maven.plugins
@@ -99,15 +133,15 @@
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
diff --git a/file-web/src/main/resources/script/startup.bat b/file-web/src/main/resources/script/startup.bat
deleted file mode 100644
index da31da4..0000000
--- a/file-web/src/main/resources/script/startup.bat
+++ /dev/null
@@ -1,2 +0,0 @@
-java -jar app/file-web/file-web-1.0.0-SNAPSHOT.jar
-pause
\ No newline at end of file
diff --git a/file-web/src/main/resources/script/startup.sh b/file-web/src/main/resources/script/startup.sh
deleted file mode 100644
index 034ca31..0000000
--- a/file-web/src/main/resources/script/startup.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/bash
-
-BUILD_ID=dontKillMe
-
-nohup java -jar app/file-web/file-web-1.0.0-SNAPSHOT.jar --server.port=8763 &
-
-
-
diff --git a/file-web/src/main/resources/script/stop.sh b/file-web/src/main/resources/script/stop.sh
deleted file mode 100644
index 117e53e..0000000
--- a/file-web/src/main/resources/script/stop.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/bash
-
-PID=$(ps -ef | grep app/file-web |grep -v grep | awk '{ print $2 }')
-if [ -z "$PID" ]
-then
- echo Application is already stopped
-else
- echo kill $PID
- kill $PID
-fi
-
diff --git a/file-web/src/main/script/restart.sh b/file-web/src/main/script/restart.sh
new file mode 100644
index 0000000..d5cb3a8
--- /dev/null
+++ b/file-web/src/main/script/restart.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+cd `dirname $0`
+./stop.sh $*
+./start.sh $*
diff --git a/file-web/src/main/script/start.sh b/file-web/src/main/script/start.sh
new file mode 100644
index 0000000..f5de535
--- /dev/null
+++ b/file-web/src/main/script/start.sh
@@ -0,0 +1,139 @@
+#!/bin/bash
+. /etc/profile
+. ~/.bashrc
+. ~/.bash_profile
+#support jsch commons
+
+cd `dirname $0`
+BIN_DIR=`pwd`
+cd ..
+DEPLOY_DIR=`pwd`
+
+SPRING_PROFILES_ACTIVE="dev"
+export SPRING_PROFILES_ACTIVE
+
+echo "-------- SPRING_PROFILES_ACTIVE ${SPRING_PROFILES_ACTIVE}--------"
+
+echo "--------start app ${DEPLOY_DIR}--------"
+PARENT_DIR=$(dirname "$PWD")
+CONF_DIR=$DEPLOY_DIR/conf
+LIB_DIR=$DEPLOY_DIR/lib
+SERVER_NAME=`cat $CONF_DIR/config/application.yml | grep -w "name:" | grep -v "#" | awk 'NR==1{print $2}' | tr -d '\r'`
+SERVER_PORT=`cat $CONF_DIR/config/application.yml | grep -w "port:" | grep -v "#" | awk 'NR==1{print $2}' | tr -d '\r'`
+
+#REM **********************************************************************************************
+LOG_PATH="/export/log/qiwen-file"
+GC_LOG_PATH="/export/log/qiwen-file/gc"
+if [ "${LOG_PATH}" == "" ] ; then
+ LOG_PATH=$PARENT_DIR/logs/${SERVER_NAME}
+fi
+if [ "${GC_LOG_PATH}" == "" ] ; then
+ GC_LOG_PATH=$PARENT_DIR/logs/${SERVER_NAME}/gclog
+fi
+
+if [ ! -d ${LOG_PATH} ];then
+ mkdir -p ${LOG_PATH}
+fi
+if [ ! -d ${GC_LOG_PATH} ];then
+ mkdir -p ${GC_LOG_PATH}
+fi
+
+STDOUT_FILE=${LOG_PATH}/nohup.out
+
+#if use self jdk,modify
+#JAVA_HOME="/usr/lib/jvm/jdk1.8.0_191"
+if [ "${JAVA_HOME}" != "" ] ; then
+ export JAVA_HOME
+ export PATH=$PATH:JAVA_HOME/bin
+ echo JAVA_HOME:${JAVA_HOME}
+else
+ echo "JAVA_HOME not set!!!"
+ exit 1
+fi
+
+USER_VMARGS="-D64 -server -Xmx1g -Xms1g -Xmn521m -Xss256k "
+
+#GC_OPTS=""
+GC_OPTS="-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$LOG_PATH/heapdump.$$.hprof -XX:ErrorFile=$LOG_PATH/hs_err_pid$$.log -Xloggc:$GC_LOG_PATH/gc.$$.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC "
+
+JMX_PORT=""
+JAVA_JMX_OPTS=""
+if [ "${JMX_PORT}" != "" ] ; then
+ JAVA_JMX_OPTS="-Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=${JMX_PORT} "
+fi
+
+#JAVA_DEBUG=""
+#if [ "$1" = "debug" ]; then
+# JAVA_DEBUG=" -Xdebug "
+#fi
+
+JAVA_OPTS=""
+#if [ "${JAVA_OPTS}" != "" ]; then
+# JAVA_OPTS=" -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true "
+#fi
+#REM **********************************************************************************************
+
+#prevent repeated start
+PIDS=`ps -ef | grep java | grep "$CONF_DIR" |awk '{print $2}'`
+if [ -n "$PIDS" ]; then
+ echo "ERROR: The $SERVER_NAME already started!"
+ echo "PID: $PIDS"
+ exit 1
+fi
+
+if [ -n "$SERVER_PORT" ]; then
+ SERVER_PORT_COUNT=`netstat -tln | grep $SERVER_PORT | wc -l`
+ if [ $SERVER_PORT_COUNT -gt 0 ]; then
+ echo "ERROR: The $SERVER_NAME port $SERVER_PORT already used!"
+ exit 1
+ fi
+fi
+#=====================
+
+######################cloud trace##########################
+TRACE_CLOUD_TRACE_URL=http://localhost:9411
+TRACE_CLOUD_TRACE_PROBABILITY=1.0
+TRACE_CLOUD_TRACE_ENABLED=true
+TRACE_LIB_JARS="/opt/cloud-trace-deps-1.1.0/*"
+echo "Using TRACE_LIB_JARS: $TRACE_LIB_JARS"
+if [ -n "$TRACE_CLOUD_TRACE_URL" ]; then
+ TRACE_OPTS="-Dcloud.trace.url=$TRACE_CLOUD_TRACE_URL"
+fi
+if [ -n "$TRACE_CLOUD_TRACE_PROBABILITY" ]; then
+ TRACE_OPTS="$TRACE_OPTS -Dcloud.trace.probability=$TRACE_CLOUD_TRACE_PROBABILITY"
+fi
+if [ -n "$TRACE_CLOUD_TRACE_ENABLED" ]; then
+ TRACE_OPTS="$TRACE_OPTS -Dcloud.trace.enabled=$TRACE_CLOUD_TRACE_ENABLED"
+fi
+#echo "Using TRACE_OPTS: $TRACE_OPTS"
+##########################################################
+
+
+LIB_JARS=$DEPLOY_DIR/lib/*
+echo "Using LIB_JARS: $LIB_JARS"
+echo "Using CONF_DIR: $CONF_DIR"
+echo "Using TRACE_LIB_JARS: $TRACE_LIB_JARS"
+
+CLASSPATH=".:$CONF_DIR:$LIB_JARS:$TRACE_LIB_JARS"
+
+EXEC_CMDLINE="${JAVA_HOME}/bin/java -classpath ${CLASSPATH} ${TRACE_OPTS} ${USER_VMARGS} ${GC_OPTS} ${JAVA_JMX_OPTS} ${JAVA_DEBUG} ${JAVA_OPTS} com.qiwenshare.file.FileApplication"
+
+echo "Start app command line: ${EXEC_CMDLINE}" >> $STDOUT_FILE
+echo "Starting $SERVER_NAME ..."
+
+nohup ${EXEC_CMDLINE} >> $STDOUT_FILE 2>&1 &
+
+###wait app start listener port, only wait 120s
+COUNT=0
+while [ $COUNT -lt 120 ]; do
+ echo -e ".\c"
+ sleep 1
+ IS_LISTENED=`netstat -an | grep -w LISTEN | grep -w $SERVER_PORT`
+ let COUNT++
+ if [ -n "$IS_LISTENED" ]; then
+ COUNT=1000
+ fi
+done
+
+echo "Console File: $STDOUT_FILE"
+echo "--------start app $SERVER_NAME on $(uname -n) (pid=$$)--------"
\ No newline at end of file
diff --git a/file-web/src/main/script/stop.sh b/file-web/src/main/script/stop.sh
new file mode 100644
index 0000000..96a6d4e
--- /dev/null
+++ b/file-web/src/main/script/stop.sh
@@ -0,0 +1,63 @@
+#!/bin/bash
+. /etc/profile
+. ~/.bashrc
+. ~/.bash_profile
+#support jsch commons
+
+cd `dirname $0`
+BIN_DIR=`pwd`
+cd ..
+DEPLOY_DIR=`pwd`
+
+echo "========stop app ${DEPLOY_DIR}========"
+PARENT_DIR=$(dirname "$PWD")
+CONF_DIR=$DEPLOY_DIR/conf
+LIB_DIR=$DEPLOY_DIR/lib
+SERVER_NAME=`cat $CONF_DIR/config/application.yml | grep -w "name:" | grep -v "#" | awk 'NR==1{print $2}' | tr -d '\r'`
+SERVER_PORT=`cat $CONF_DIR/config/application.yml | grep -w "port:" | grep -v "#" | awk 'NR==1{print $2}' | tr -d '\r'`
+
+#REM **********************************************************************************************
+LOG_PATH="/export/log/qiwen-file"
+if [ "${LOG_PATH}" == "" ] ; then
+ LOG_PATH=$PARENT_DIR/logs/${SERVER_NAME}
+fi
+
+STDOUT_FILE=$LOG_PATH/nohup.out
+
+if [ -z "$SERVER_NAME" ]; then
+ SERVER_NAME=`hostname`
+fi
+
+PIDS=`ps -ef | grep java | grep "$CONF_DIR" |awk '{print $2}'`
+if [ -z "$PIDS" ]; then
+ echo "ERROR: The $SERVER_NAME does not started!"
+ exit 1
+fi
+#REM **********************************************************************************************
+
+echo "Stopping the $SERVER_NAME ..."
+echo "Stopping the $SERVER_NAME" >> $STDOUT_FILE
+date>>$STDOUT_FILE
+id>>$STDOUT_FILE
+echo $SERVER_NAME shutdown , pids $PIDS >> $STDOUT_FILE
+
+for PID in $PIDS ; do
+ kill $PID
+done
+
+COUNT=0
+while [ $COUNT -lt 1 ]; do
+ echo -e ".\c"
+ sleep 1
+ COUNT=1
+ for PID in $PIDS ; do
+ PID_EXIST=`ps -f -p $PID | grep java`
+ if [ -n "$PID_EXIST" ]; then
+ COUNT=0
+ break
+ fi
+ done
+done
+
+echo "PID: $PIDS has bean kill" >> $STDOUT_FILE
+echo "========stop app $SERVER_NAME shutdown========"
\ No newline at end of file
diff --git a/file-web/src/main/script/winstart.bat b/file-web/src/main/script/winstart.bat
new file mode 100644
index 0000000..e2bf9c5
--- /dev/null
+++ b/file-web/src/main/script/winstart.bat
@@ -0,0 +1,29 @@
+@echo off & setlocal enabledelayedexpansion
+rem if need special jdk
+rem JAVA_HOME="c:\Java\jdk1.8.0_191\"
+rem PATH=%JAVA_HOME%\bin;%PATH%
+
+rem enter app deploy path
+cd ..\
+
+set DEPLOY_PATH=%cd%
+set CONF_DIR=%DEPLOY_PATH%/conf
+set LIB_JARS=%DEPLOY_PATH%/lib/*
+set LOG_PATH=%DEPLOY_PATH%/logs
+
+set CLASSPATH=".;%CONF_DIR%;%LIB_JARS%"
+
+set JAVA_VM=-D64 -server -Xmx512m -Xms512m -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC
+set JAVA_OPTIONS=-Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=8231
+
+echo DEPLOY_PATH: %DEPLOY_PATH%
+echo CLASSPATH=%CLASSPATH%
+echo "Start App..."
+
+java -version
+java %JAVA_VM% %JAVA_OPTIONS% -classpath %CLASSPATH% -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8336 com.qiwenshare.file.FileApplication
+
+goto end
+
+:end
+pause
\ No newline at end of file