小编Zul*_*Ali的帖子

配置 spring-devtools.properties 时,Spring Boot devtools Livereload 服务器未启动

我在本地环境中的 eclipse 上的嵌入式 tomcat 服务器上运行 spring boot 应用程序,并启用了 spring 开发工具。而且我还在应用程序中配置了 spring web flow。以下是版本详情。

Spring Boot 1.5.3.RELEASE
Spring Web Flow 2.4.4.RELEASE
Run Code Online (Sandbox Code Playgroud)

开发工具的 pom 配置为

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <optional>true</optional>
    <scope>runtime</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)

我在资源下的“application.properties”中用于 livereload 和重新启动的 devtools 配置是

spring.devtools.livereload.enabled=true
spring.devtools.restart.additional-exclude=/webapp/**,WEB-INF/view/**
spring.devtools.restart.enabled=true
Run Code Online (Sandbox Code Playgroud)

设置上述属性后,livereload 和自动重启工作没有任何问题。但是 spring-webflow 相关的功能在应用程序中不起作用。

由于已知问题 spring-dev-tools 和 spring-web-flow 不能很好地发挥作用,我不得不将此属性作为解决方法修复在 /resources/META-INF 下的“spring-devtools.properties”文件中如下所示。

restart.include.spring=/spring-[\\s\\S]+\.jar
Run Code Online (Sandbox Code Playgroud)

此属性修复了 spring-web-flow 问题,但 livereload 服务器未启动。服务器控制台日志也没有显示它已经在某某端口上启动了 livereload 服务器。

我无法确定导致此问题的原因。

任何人都可以帮忙吗?

更新: 我似乎无法完成这项工作。我认为上面提到的解决方法是在 Restart Classloader 中包含 dev-tools 类,从而阻止 livereload 服务器启动。

如果我错了,请纠正我。

livereload spring-boot spring-boot-devtools

7
推荐指数
1
解决办法
2116
查看次数