Tomcat-9.0.29あたりから起動スクリプト(catalina.sh)の作りが変わったらしく、CATALINA_OPTS
に改行付き文字列を指定すると起動しなくなりました。
例えば以下のような感じ。
export CATALINA_OPTS=" -server -Xmx8G -XX:+UseStringDeduplication -XX:+HeapDumpOnOutOfMemoryError ... "
で、解決策ですが改行を消すしかありません。
catalina_opts=" -server -Xmx8G -XX:+UseStringDeduplication -XX:+HeapDumpOnOutOfMemoryError ... " export CATALINA_OPTS=`echo $catalina_opts | perl -pe 's/\s+/ /g'`
これで起動するようになりました。