9

在开始之前,我想说我已经尝试过spring-boot-devtools reload of multi-module maven project changes中提出的解决方案,这对我不起作用。

问题:

我有一个这样的多模块 Spring Boot 项目:

在此处输入图像描述

模块启动器对模块GUI具有 Maven 依赖关系。我从启动器中的主要方法启动我的 Spring Boot 应用程序。

当我运行应用程序并更改GUI模块中的任何 HTML 文件时,spring-boot-devtools依赖项不会为我正在运行的应用程序实时重新加载这些更改。甚至手动重启启动也无济于事。我需要手动编译GUI,然后再次运行启动器

我尝试了什么:

  1. 我尝试先在parentspring-boot-devtools中定义依赖关系 ,然后仅在GUI模块中,然后同时在两者中。 pom.xml
  2. 我尝试按照spring-boot-devtools reload of multi-module maven project changesspring.devtools.restart.additional-paths=../gui中的建议添加我的application.properties文件。这确实会触发重新加载(根据日志),但是这些更改不会传播到GUI依赖项的文件中。此外,在我什至将这个项目变成多模块之前,没有必要仅仅因为 HTML 文件而重新加载(没有正在编译),我可以立即看到更改。jar

如果有任何帮助,我会使用 Netbeans GUI。我还尝试从命令行运行该项目,但没有成功。所有模块上的 Maven 打包设置为jar.

4

2 回答 2

5

当您在 devtools 中配置绝对路径时这有效的事实告诉我,这主要是一个工作目录问题。

所以这意味着:

  • 配置的路径应该相对于您启动 CLI 的位置
  • 您应该在 IDE 的运行配置中配置与工作目录相同的位置(无论您的 IDE 用于启动应用程序的配置都应该有这样的选项)

在您的情况下:一切都应该与您的启动器模块相关;这也应该是您 IDE 中的工作目录。

于 2017-10-17T20:26:01.513 回答
-3

我不知道它是怎么发生的,但是在重新访问时,它开始工作,而我并没有故意改变任何东西。它甚至不需要spring.devtools.restart.additional-path属性集。

可能是 Netbeans IDE 的问题?再说一次,它也不能从命令行工作。如果有人对此有任何解释,它仍然会很感激,因为它可能会阻止这个问题在未来发生。

于 2017-10-17T20:28:57.647 回答