|
|
@@ -1,17 +1,20 @@
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
#JAVA_HOME=/opt/jdk1.7.0_07
|
|
|
-MAINCLASS="com.sdyc.clstest.t.HelloWorld"
|
|
|
+MAINCLASS="org.eclipse.jetty.start.Main"
|
|
|
LIB_DIR="lib"
|
|
|
-CLASS_DIR="classes"
|
|
|
+CLASS_DIR="start.jar"
|
|
|
+JVM_ARGS="-Djetty.port=6220 -Dsolr.solr.home=solr -Dorg.eclipse.jetty.util.URI.charset=UTF-8"
|
|
|
PRO_ARGS=""
|
|
|
-JVM_ARGS="-Xmx128m"
|
|
|
-
|
|
|
+PROGRAM_NAME=solr
|
|
|
|
|
|
+PID_DIR=/tmp/$PROGRAM_NAME
|
|
|
jcommand="java"
|
|
|
current_dir=$(cd "$(dirname "$0")"; pwd)
|
|
|
runtype="-classpath"
|
|
|
APPEND_LIB=$current_dir"/"$CLASS_DIR
|
|
|
+PID_NAME=$PROGRAM_NAME".pid"
|
|
|
+pid=$PID_DIR/$PID_NAME
|
|
|
|
|
|
echo "CURRENT_DIR="$current_dir
|
|
|
|
|
|
@@ -25,33 +28,46 @@ for f in $filelist
|
|
|
|
|
|
case $1 in
|
|
|
'start' )
|
|
|
- echo -n 'Starting NDETL in Domean Thread: '
|
|
|
- if nohup $jcommand $JVM_ARGS $runtype $APPEND_LIB $MAINCLASS $PRO_ARGS &
|
|
|
- then
|
|
|
- echo 'OK...'
|
|
|
- else
|
|
|
- echo 'Failed...'
|
|
|
+ mkdir -p "$PID_DIR"
|
|
|
+
|
|
|
+ if [ -f "$pid" ]; then
|
|
|
+ echo $pid existsed, pid: `cat $pid`
|
|
|
+ if kill -0 `cat "$pid"` > /dev/null 2>&1; then
|
|
|
+ echo $PROGRAM_NAME running as process `cat $pid`. Stop it first.
|
|
|
+ exit 1
|
|
|
+ fi
|
|
|
fi
|
|
|
- ;;
|
|
|
|
|
|
- 'daemon' )
|
|
|
- echo -n 'Starting NDETL in Domean Thread: '
|
|
|
- if $jcommand $JVM_ARGS $runtype $APPEND_LIB $MAINCLASS $PRO_ARGS > /dev/null &
|
|
|
+ echo -n 'Starting : '
|
|
|
+ if $jcommand $JVM_ARGS $runtype $APPEND_LIB $MAINCLASS $PRO_ARGS > /dev/null 2>&1 &
|
|
|
then
|
|
|
- echo 'OK...'
|
|
|
+ echo $! > "$pid"
|
|
|
+ echo 'OK'
|
|
|
else
|
|
|
- echo 'Failed...'
|
|
|
+ echo 'Failed'
|
|
|
fi
|
|
|
;;
|
|
|
-
|
|
|
+
|
|
|
'run' )
|
|
|
$jcommand $JVM_ARGS $runtype $APPEND_LIB $MAINCLASS $PRO_ARGS
|
|
|
;;
|
|
|
|
|
|
- 'list' )
|
|
|
- ps aux | egrep '(PID|java)'
|
|
|
+ 'stop' )
|
|
|
+ if [ -f "$pid" ]; then
|
|
|
+ if kill `cat "$pid"` > /dev/null 2>&1; then
|
|
|
+ echo stopping $PROGRAM_NAME
|
|
|
+ kill `cat "$pid"`
|
|
|
+ else
|
|
|
+ echo No $PROGRAM_NAME to stop
|
|
|
+ fi
|
|
|
+ else
|
|
|
+ echo No $PROGRAM_NAME to stop
|
|
|
+ fi
|
|
|
;;
|
|
|
|
|
|
+ 'list' )
|
|
|
+ ps aux | egrep '(PID|java|$PROGRAM_NAME)'
|
|
|
+ ;;
|
|
|
*)
|
|
|
-echo 'usage: `basename $0` {start|daemon|run|list}'
|
|
|
+echo 'usage: `basename $0` {start|run|stop|list}'
|
|
|
esac
|