Я не думаю, что это исключение, которое останавливает tomcat от перезапуска. Ваш скрипт shutdown не останавливает tomcat, он просто открывает порт на сервере tomcat (8005, если вы не изменили значение по умолчанию в server.xml), сообщает ему, чтобы он остановился, а затем вышел. Tomcat может все еще нуждаться в секундах или двух, чтобы очистить, прежде чем он выйдет. Поэтому, если вы делаете что-то вроде shutdown.sh; startup.sh
в своем сценарии перезапуска, стартовый tomcat может захотеть привязать к порту, который еще не выпустил предыдущий tomcat. Помещение sleep 5
между выключением и запуском должно решить это.
Это код, который я недавно написал, когда я была такая же проблема:
instdir=/usr/lib
port=8443
$instdir/tomcat/bin/shutdown.sh
tries=0
while netstat -anf inet | grep '\*\.'$port > /dev/null
do
tries=`expr $tries + 1`
test $tries -ge 12 && break
sleep 5
done
if test "$tries" -ge 12
then
echo "Could not stop tomcat, port $port still in use"
exit 1
fi
$instdir/tomcat/bin/startup.sh
Необходимо знать о ваших конфигурациях как можно скорее. – Josh
@Soylent - Какие конфигурации вам нужно знать? – Sharmi
Вы предоставили очень мало информации в вопросе. Я думаю, у нас есть больше шансов помочь вам, если вы предоставите больше информации. Вы пишете «Я настроил сервер Tomcat» Есть ли какие-либо сведения о конфигурации, которую вы можете поделиться с нами? – Josh