Вы можете попробовать обновить платформу непосредственно после сборки из командной строки (например, «ant updatesystem») перед запуском сервера.
Перезапуск после развертывания - довольно распространенное явление. шаг (в случае, если система обновления выполняется при запущенном сервере).
Я считаю, что одна из причин, по которой требуется перезапуск, связана с тем, что контекст Spring необходимо повторно инициализировать, поскольку некоторые из bean-компонентов требуется системная информация о новом типе.
Например, скажем, вам нужно создать новый тип и перехватчик для этого вновь созданного типа. При развертывании этого изменения вы делаете следующее:
- Измените двоичные файлы и запустите сервер
- Выполните систему обновления, чтобы база данных получила последние столбцы и т. Д.
Теперь, если вы попытаетесь проверить, работает ли перехватчик, вы увидите, что он не работает, потому что, когда его Spring bean-компонент был создан (во время запуска сервера), тип, который он должен обрабатывать, отсутствовал в базу данных.
Из-за этого после перезапуска перехватчик работает должным образом.
PS: Описанная выше проблема перехватчика могла быть каким-то образом исправлена в последних версиях Hybris.