Ожидайте, пока кот не закончит запускать

Я просто столкнулся с этим и проблема после переключения пакета с nuget на локально связанные DLL. Проблема была связана с устаревшим связыванием в app.config.

29
задан timdisney 17 December 2008 в 22:35
поделиться

4 ответа

Существует, вероятно, несколько способов сделать это. Прием, который мы используем:

#!/bin/bash

until [ "`curl --silent --show-error --connect-timeout 1 -I http://localhost:8080 | grep 'Coyote'`" != "" ];
do
  echo --- sleeping for 10 seconds
  sleep 10
done

echo Tomcat is ready!

Hope это помогает!

39
ответ дан Matt Solnit 14 October 2019 в 08:17
поделиться

Нет легкого метода. Что касается startup.sh и catalina.sh, работает кот, когда они заканчивают. Хотя, внутренне, кот все еще инициализирует и стартовые контексты.

Это помогло бы знать, пытались ли Вы узнать, закончил ли Ваш контекст загружаться или если Вы просто желаете генерала, "Tomcat работает, хотя Ваши контексты не могли бы быть полностью загружены..."

, Если это - последний, Вы могли бы создать веб-приложение, которое просто имеет слушателя контекста, который выполнит сценарий с помощью Времени выполнения. Если бы Вы были удобны, то Вы могли бы сделать веб-приложение configuable через файл web.xml для принятия параметра, который указывает на сценарий для выполнения.

0
ответ дан Mike 14 October 2019 в 08:17
поделиться

Лично, я просто наблюдал бы, что catalinas регистрируется для определенной строки в зависимости от как Ваша установка и что точная фаза Ваш поиск.

0
ответ дан Loki 14 October 2019 в 08:17
поделиться

Зависит от того, что Вы подразумеваете под окончанием. Чего Вы хотите ожидать?

у Вас мог, например, быть сценарий, который неоднократно поражает URL, пока это не получает желательный результат, который только был бы доступен, после того как приложение правильно инициализируется.

у Вас мог также быть слушатель контекста, который выписывает, "я - готовый" файл, который Вы используете для передачи сигналов о готовности приложения. (Если Вы делаете это, быть уверенными, что файл не существует прежде, чем запустить Ваш контейнер приложения).

1
ответ дан Dustin 14 October 2019 в 08:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: