啓動java項目 腳本

##  yubaofu  #### 
APP_HOME="..."
FILE_NAME="..."
MAIN_CLASS_NAME="..."
PORT=8888

CLASSPATH=$APP_HOME/$FILE_NAME
for i in $APP_HOME/lib/*.jar
do
CLASSPATH="$i:$CLASSPATH"
done

export CLASSPATH

#if [-z "$JAVA_HOME"] ;then echo "java_home is $JAVA_HOME"
#fi

JVM_ARGS="-DlogDir=$APP_HOME/log "

if [ -r app.vmoptions ];then
JVM_ARGS="$JVM_ARGS `tr '\n' ' ' < app.vmoptions`"
fi

#JVM_ARGS=$JVM_ARGS `tr '\n' ' ' < app.vmoptions`

#echo "$APP_HOME \n"
#echo "$CLASSPATH \n"
#echo "$JVM_ARGS "
#echo "$MAIN_CLASS_NAME"


process_Id=`lsof -i tcp:$PORT|grep $PORT|awk '{print $2}'`

start(){
printf 'RenderServer is starting...\n'
if [ $process_Id ];then
kill -9 $process_Id
sleep 1
fi

exec java $JVM_ARGS -classpath $CLASSPATH $MAIN_CLASS_NAME
}

restart(){
printf 'RenderServer is restart...\n'
if [ $process_Id ];then
kill -9 $process_Id
sleep 1
fi

exec java $JVM_ARGS -classpath $CLASSPATH $MAIN_CLASS_NAME
}

stop (){
printf 'RenderServer is stoping...\n'
if [ $process_Id ];then
kill -9 $process_Id
fi
}



case "$1" in
start)
start
;;
restart)
restart
;;
stop)
stop
;;
*)
printf 'Usage:%s {start|restart|stop}\n'
printf 'app.vmoptions is configuration for JVM \n '
exit 1
;;
esac


-Xmn512m
-Xms640m
-Xmx1024m
-XX:PermSize=128m
-XX:MaxPermSize=128m
-XX:ReservedCodeCacheSize=64m
-server
-XX:-UseConcMarkSweepGC
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章