我第一次尝试设置/配置Apache ACE。看起来我运行正常,但我希望在Linux启动时自动启动ACE。我在下面创建了init.d脚本,它启动了ACE但是它在OSGI控制台中放弃了我,当我离开控制台ACE关闭时。 有没有办法在没有OSGI控制台的情况下启动ACE,所以我不必保持会话打开以保持ACE运行?
#! /bin/bash
BIN_DIR=/opt/ace-current/server-allinone
PATH=/bin:/usr/bin:/sbin:/usr/sbin
JAVA_HOME=/usr/lib/jvm/default-java
if [ `id -u` -ne 0 ]; then
echo "You need root privileges to run this script"
exit 1
fi
. /lib/lsb/init-functions
if [ -r /etc/default/rcS ]; then
. /etc/default/rcS
fi
case $1 in
start)
cd $BIN_DIR
java -Dorg.apache.ace.server=localhost:11868 -Dorg.osgi.service.http.port=11868 -Dorg.apache.ace.obr=localhost:11868 -jar server-allinone.jar
;;
stop)
pid=`ps aux | grep server-allinone | awk '{print $2}'`
kill -9 $pid
;;
restart)
$0 stop
$0 start
;;
esac
exit 0
答案 0 :(得分:1)
java -Dgosh.args=--nointeractive -jar server-allinone.jar
将禁用本地shell。