ISSUE #2726 Fix JAVA_HOME containing spaces
### Motivation
Fix issue [#3726](https://github.com/apache/bookkeeper/issues/2726)
### Changes
Add double quotation around `${JAVA}` in `/bin/bookkeeper`.
Reviewers: Yong Zhang <zhangyong1025.zy@gmail.com>, Andrey Yegorov <None>, Sijie Guo <None>
This closes #2727 from Sunny-Island/fix-space-in-java-home, closes #2726
diff --git a/bin/bkctl b/bin/bkctl
index fee0526..ec0a0c7 100755
--- a/bin/bkctl
+++ b/bin/bkctl
@@ -64,4 +64,4 @@
#Change to BK_HOME to support relative paths
cd "$BK_HOME"
-exec ${JAVA} ${OPTS} org.apache.bookkeeper.tools.cli.BKCtl --conf ${CLI_CONF} $@
+exec "${JAVA}" ${OPTS} org.apache.bookkeeper.tools.cli.BKCtl --conf ${CLI_CONF} $@
diff --git a/bin/bookkeeper b/bin/bookkeeper
index 9745754..47cb42d 100755
--- a/bin/bookkeeper
+++ b/bin/bookkeeper
@@ -157,26 +157,26 @@
#Change to BK_HOME to support relative paths
cd "$BK_HOME"
if [ ${COMMAND} == "bookie" ]; then
- exec ${JAVA} ${OPTS} ${JMX_ARGS} org.apache.bookkeeper.server.Main --conf ${BOOKIE_CONF} $@
+ exec "${JAVA}" ${OPTS} ${JMX_ARGS} org.apache.bookkeeper.server.Main --conf ${BOOKIE_CONF} $@
elif [ ${COMMAND} == "autorecovery" ]; then
- exec ${JAVA} ${OPTS} ${JMX_ARGS} org.apache.bookkeeper.replication.AutoRecoveryMain --conf ${BOOKIE_CONF} $@
+ exec "${JAVA}" ${OPTS} ${JMX_ARGS} org.apache.bookkeeper.replication.AutoRecoveryMain --conf ${BOOKIE_CONF} $@
elif [ ${COMMAND} == "localbookie" ]; then
NUMBER=$1
shift
- exec ${JAVA} ${OPTS} ${JMX_ARGS} -Dzookeeper.4lw.commands.whitelist='*' org.apache.bookkeeper.util.LocalBookKeeper ${NUMBER} ${BOOKIE_CONF} $@
+ exec "${JAVA}" ${OPTS} ${JMX_ARGS} -Dzookeeper.4lw.commands.whitelist='*' org.apache.bookkeeper.util.LocalBookKeeper ${NUMBER} ${BOOKIE_CONF} $@
elif [ ${COMMAND} == "standalone" ]; then
- exec ${JAVA} ${OPTS} ${JMX_ARGS} -Dzookeeper.4lw.commands.whitelist='*' org.apache.bookkeeper.stream.cluster.StandaloneStarter --conf ${BK_HOME}/conf/standalone.conf $@
+ exec "${JAVA}" ${OPTS} ${JMX_ARGS} -Dzookeeper.4lw.commands.whitelist='*' org.apache.bookkeeper.stream.cluster.StandaloneStarter --conf ${BK_HOME}/conf/standalone.conf $@
elif [ ${COMMAND} == "upgrade" ]; then
- exec ${JAVA} ${OPTS} org.apache.bookkeeper.bookie.FileSystemUpgrade --conf ${BOOKIE_CONF} $@
+ exec "${JAVA}" ${OPTS} org.apache.bookkeeper.bookie.FileSystemUpgrade --conf ${BOOKIE_CONF} $@
elif [ $COMMAND == "zookeeper" ]; then
BOOKIE_LOG_FILE=${BOOKIE_LOG_FILE:-"zookeeper.log"}
- exec $JAVA $OPTS -Dbookkeeper.log.file=$BOOKIE_LOG_FILE org.apache.zookeeper.server.quorum.QuorumPeerMain $BOOKIE_ZK_CONF $@
+ exec "${JAVA}" $OPTS -Dbookkeeper.log.file=$BOOKIE_LOG_FILE org.apache.zookeeper.server.quorum.QuorumPeerMain $BOOKIE_ZK_CONF $@
elif [ ${COMMAND} == "shell" ]; then
ENTRY_FORMATTER_ARG="-DentryFormatterClass=${ENTRY_FORMATTER_CLASS:-org.apache.bookkeeper.util.StringEntryFormatter}"
- exec ${JAVA} ${OPTS} ${ENTRY_FORMATTER_ARG} org.apache.bookkeeper.bookie.BookieShell -conf ${BOOKIE_CONF} $@
+ exec "${JAVA}" ${OPTS} ${ENTRY_FORMATTER_ARG} org.apache.bookkeeper.bookie.BookieShell -conf ${BOOKIE_CONF} $@
elif [ ${COMMAND} == "help" ]; then
bookkeeper_help;
else
- exec ${JAVA} ${OPTS} ${COMMAND} $@
+ exec "${JAVA}" ${OPTS} ${COMMAND} $@
fi
diff --git a/bin/dlog b/bin/dlog
index 9a9b8f1..1e80db9 100755
--- a/bin/dlog
+++ b/bin/dlog
@@ -113,19 +113,19 @@
cd "$BK_HOME"
case "${COMMAND}" in
local)
- exec ${JAVA} ${OPTS} ${JMX_ARGS} -Dzookeeper.4lw.commands.whitelist='*' org.apache.distributedlog.LocalDLMEmulator $@
+ exec "${JAVA}" ${OPTS} ${JMX_ARGS} -Dzookeeper.4lw.commands.whitelist='*' org.apache.distributedlog.LocalDLMEmulator $@
;;
tool)
- exec ${JAVA} ${OPTS} org.apache.distributedlog.tools.Tool org.apache.distributedlog.tools.DistributedLogTool $@
+ exec "${JAVA}" ${OPTS} org.apache.distributedlog.tools.Tool org.apache.distributedlog.tools.DistributedLogTool $@
;;
admin)
- exec ${JAVA} ${OPTS} org.apache.distributedlog.tools.Tool org.apache.distributedlog.admin.DistributedLogAdmin $@
+ exec "${JAVA}" ${OPTS} org.apache.distributedlog.tools.Tool org.apache.distributedlog.admin.DistributedLogAdmin $@
;;
help)
dlog_help
;;
*)
- exec ${JAVA} ${OPTS} ${COMMAND} $@
+ exec "${JAVA}" ${OPTS} ${COMMAND} $@
;;
esac
diff --git a/stream/bin/streamstorage b/stream/bin/streamstorage
index ba5becd..a85c6e7 100755
--- a/stream/bin/streamstorage
+++ b/stream/bin/streamstorage
@@ -145,9 +145,9 @@
#Change to SS_HOME to support relative paths
cd "$SS_HOME"
if [ $COMMAND == "standalone" ]; then
- exec $JAVA $OPTS -Dzookeeper.4lw.commands.whitelist="*" org.apache.bookkeeper.stream.cluster.StandaloneStarter -c $SS_STANDALONE_CONF $@
+ exec "${JAVA}" $OPTS -Dzookeeper.4lw.commands.whitelist="*" org.apache.bookkeeper.stream.cluster.StandaloneStarter -c $SS_STANDALONE_CONF $@
elif [ $COMMAND == "help" ]; then
streamstorage_help;
else
- exec $JAVA $OPTS $COMMAND $@
+ exec "${JAVA}" $OPTS $COMMAND $@
fi
diff --git a/stream/bin/streamstorage-cli b/stream/bin/streamstorage-cli
index ea7376e..6a1df78 100755
--- a/stream/bin/streamstorage-cli
+++ b/stream/bin/streamstorage-cli
@@ -108,4 +108,4 @@
#Change to SS_HOME to support relative paths
cd "$SS_HOME"
-exec $JAVA $OPTS org.apache.bookkeeper.stream.cli.StreamStorageCli "$@"
+exec "${JAVA}" $OPTS org.apache.bookkeeper.stream.cli.StreamStorageCli "$@"