Для использования JRebel Remoting требуется компонент, обращенный к HTTP. Он использует протокол HTTP, используя тот же порт, что и веб-контейнер. Это означает, что нуль conf (вроде) и никаких дыр, чтобы высунуть в брандмауэр, но недостатком является то, что он не будет работать для приложений, в которых нет WAR-модуля (пока :) :).
Я предполагаю, что ваше приложение представляет собой файл jar внутри уха. Все, что ему нужно, - это военный модуль в этом ухе. Для этой войны не нужно иметь rebel.xml или rebel-remote.xml. Создайте WAR, если ее не существует.
URL-адрес будет адресом, который вы должны ввести в веб-браузере, чтобы получить доступ к этому webapp. Например, http://example.org:8080/MyWar/
Также убедитесь, что у вас есть rebel.xml и rebel-remote.xml в развернутом проекте библиотеки (просто создавать их в Eclipse недостаточно, эти два xml-файла должны быть на сервере).
Кроме того, необходимо установить и активировать JRebel на удаленном компьютере сервера, а затем запустить JBoss со следующими аргументами JVM: -javaagent: путь/к/jrebel.jar -Drebel.remoting_plugin = истинный где путь/к/jrebel.jar указывает на установленный файл jrebel.jar
Подробнее: http://zeroturnaround.com/software/jrebel/remoting/
В вашем случае макет EAR может выглядеть следующим образом:
- myapp.ear
- webapp.war
- someEJB.jar
- lib/
- yourApp.jar
- WEB-INF/classes/
- rebel.xml
- rebel-remote.xml
- someOtherLib.jar
-
Arnel
JRebel Remoting Tech Lead
При развертывании приложения, как вы найти его на сервере? Если вы развернули приложение, разумно, что вы можете получить к нему доступ, верно? Так что это тот самый URL, который требует JRebel. –
Ну, это просто, что другие развернутые приложения будут использовать мое приложение, которое будет присутствовать в папке lib на сервере. Так же, как любая «предоставленная» зависимость maven будет занимать папку lib на сервере, таком как tomcat. Как мне найти URL-адрес такого проекта? – mystarrocks