Прежде всего, название функции не «горячее развертывание», а HotSwap. Это особенность JVM, а не IDE. IDE просто автоматизируют процесс и автоматически запускают HotSwap измененного класса, когда есть новая версия класса. HotSwap ограничивается только изменениями, которые могут быть внесены в тело существующего метода.
В IntelliJ, перейдите в Настройки-> Debugger-> HotSwap и проверьте настройки:
Включить классы Reload в фоновом флажком, а затем вы можете выбрать поведение, если IDE спросить вы о hotswapping классы, hotswap молча, или никогда не hotswap классов.
Вы должны скомпилировать вручную. Но, если приложение развертывается из «артефакта», тогда «Выполнение проекта автоматически» работает для запущенного приложения, даже если оно говорит противоположное («Настройки» -> «Компилятор»). Однако неудобство состоит в том, что автоматическая компиляция запускает с задержкой, поэтому это не так быстро, как можно было бы ожидать.Сборка вручную так же просто, как нажать CTRL + S в Eclipse, просто CTRL + F9/CMD + F9, чтобы сделать проект (который на самом деле инкрементный) или CTRL + SHIFT + F9/CMD + SHIFT + F9, если вы хотите скомпилировать один файл.
Я бы порекомендовал JRebel для улучшения опыта, так как он далеко продвинулся beyond what HotSwap can do, и он интегрируется с large number of Java frameworks, чтобы устранить передислокации. И да, я предвзятый - я работаю для ZeroTurnaround, и я занимаюсь разработкой JRebel.
UPDATE:
Первоначальный вопрос был скорее об автоматическом перераспределении веб-приложения в Tomcat/IntelliJ В конфигурации Run, вы можете настроить, что должно быть сделано для действия «Обновить»:
Действие «Обновить» вызывается вручную. CTRL + SHIFT + /CMD + SHIFT + , и поиск 'Update':
Таким образом, передислокация является достаточно «один клик «ручной процесс в IntelliJ.
http://manuals.zeroturnaround.com/jrebel/misc/frameworks.html is 404 – koppor
Благодаря @koppor для уведомления. Новый URL-адрес: http://manuals.zeroturnaround.com/jrebel/misc/integrations.html –