Повторная загрузка заводных файлов из jar в WAR

#spring #groovy

#spring #groovy

Вопрос:

У меня есть набор заводных файлов в JAR (rules.jar ) и добавили этот JAR в качестве зависимости к WAR (project.war) через Maven. Я выполнил настройку groovy с помощью Spring, и все это работает нормально, и оно вызывается.

 <lang:groovy id="primaryScript" script-source="classpath:org/sample/rules/PrimaryScript.groovy"                  refresh-check-delay="5">
</lang:groovy>
  

Проблема возникает, когда я что-то меняю в файле Groovy, и это не отражается, пока я не перестрою jar и не скопирую jar в project.war WEB-INF / lib.

Я хочу использовать возможность перезагрузки Groovy, и я не хочу держать groovy в WAR. Может кто-нибудь, пожалуйста, помочь мне здесь.

Я использую JDK 1.8, Groovy 2.4.7 и Tomcat 8 и использую Netbeans.

Спасибо

Комментарии:

1. Почему вы добавили файлы groovy в качестве зависимости? При развертывании развернутый и прочитанный сервером код будет скомпилирован классами groovy, которые (более или менее) являются просто скомпилированными классами Java. Нет необходимости иметь файлы groovy в качестве зависимости.

2. Даже если я переместил сценарий groovy в project-war и изменил сценарий, это не отражается. Я использовал maven-resources-plugin для копирования скрипта groovy в целевую папку, чтобы он не компилировался во время сборки. Не уверен, чего мне здесь не хватает.

3. Какую среду IDE вы используете?

4. Я использую Netbeans 8.0 — я вижу, что groovy в target не обновляется при изменении groovy, что, я думаю, является причиной того, что изменения не отражаются. Не уверен, является ли это проблемой Netbeans.

5. Возможно, вы захотите попробовать Eclipse (ps://www.mkyong.com/eclipse/how-to-configure-hot-deploy-in-eclipse/) или IntelliJ. Я думаю, что они лучше подходят для горячей замены и, следовательно, дают вам информацию о том, каковы ваши изменения при написании кода.