Как заставить идеи jrebel, jetty, gradle и intellij работать вместе

Я установил плагин JRebel для Intellij Idea, и мой проект работает с плагином Jetty gradle.

Я запускаю свой проект с помощью «Запуск с JRebel», проект работает отлично, но горячая замена, которую я ожидал, не работает.

Есть ли у кого-нибудь понятная и подробная инструкция, как настроить Jrebel для работы с причалом, градом и интеллигентной идеей?


person Alexey A.    schedule 27.04.2017    source источник


Ответы (1)


1) Вам необходимо добавить JRebel Agent в качестве аргумента виртуальной машины в Jetty.

В зависимости от вашей среды:

Windows 64-bit JDK  jrebel64.dll
Windows 32-bit JDK  jrebel32.dll
Mac OS X 64-bit JDK libjrebel64.dylib
Mac OS X 32-bit JDK libjrebel32.dylib
Linux 64-bit JDK    libjrebel64.so
Linux 32-bit JDK    libjrebel32.so

Вам нужно добавить аргумент -agenthpath в файл gradle.properties:

org.gradle.jvmargs=-agentpath:[c:\path\to\]lib\jrebel64.dll

2) Вам необходимо сгенерировать rebel.xml файлов для ваших проектов в плагине JRebel IDE.

Нажмите правой кнопкой мыши на узле проекта в Просмотре проекта и выберите JRebel > Rebel.xml. Кроме того, вы можете проверить проект в окне модулей JRebel.

3) Вам необходимо развернуть (запустить) свои проекты в Jetty с файлами конфигурации rebel.xml, и когда вы вносите изменения в код в файле .java, вам необходимо создать новый файл .class. По умолчанию IntelliJ IDEA не компилирует классы при сохранении. Нажмите Ctrl+Shift+F9, чтобы скомпилировать текущий файл, модуль или пакет (эту команду также можно найти через Build > Make Project).

person Community    schedule 16.06.2017