Spring Boot Devtools重启不会自动与Spring Boot 1.5.4一起使用

时间:2017-07-19 01:05:50

标签: spring-boot spring-boot-devtools

我在网上查看了很多关于spring-boot-devtools的文章和问题,但仍然无法弄清楚为什么它不适合我。每次我运行我的应用程序时,我都会得到以下信息:

17:54:28.057 [main] DEBUG 
org.springframework.boot.devtools.settings.DevToolsSettings
- Included patterns for restart : []

17:54:28.066 [main] DEBUG 
org.springframework.boot.devtools.settings.DevToolsSettings
- Excluded patterns for restart : [/spring-boot-starter/target/classes/,
/spring-boot-autoconfigure/target/classes/, /spring-boot-starter-[\w-]+/,
 /spring-boot/target/classes/, /spring-boot-actuator/target/classes/, 
/spring-boot-devtools/target/classes/]

17:54:28.069 [main] DEBUG 
org.springframework.boot.devtools.restart.ChangeableUrls - Matching 
URLs for reloading : [file:/some/where/build/classes/main/, 
file:/some/where/build/resources/main/]

每当我更改我的一个控制器文件时,什么都没发生。所以我提到came across an article我应该尝试将spring.devtools.restart.additional-paths=/src添加到我的应用程序属性文件中。使用/src将无效,因为它会认为它是绝对路径,因此我将其更改为src。执行此操作后,将新端点添加到我的控制器文件并保存它会触发Spring Boot重新启动。但是,我得到了端点404,只有在我手动重启服务器时才能工作。

如何重新启动Spring Boot并让我看到我对控制器所做的实际更改?

我在build.gradle

中使用了Spring Boot 1.5.4以及以下内容
dependencies {
    // ...
    compile('org.springframework.boot:spring-boot-starter-data-jpa')
    compile('org.springframework.boot:spring-boot-starter-web')
    compile('org.springframework.boot:spring-boot-devtools')
    testCompile('org.springframework.boot:spring-boot-starter-test')
}

我的应用具有以下结构:

build/
src/
  main/
    java/
      com/
        example/
          something/
            controllers/
              MyController.java
            SomethingApplication.java
    resources/
      application.yml
  test/
    ...

我的application.yml包含

spring:
    devtools:
        restart:
            enabled: true
            additional-paths: src

2 个答案:

答案 0 :(得分:0)

请检查application.yml中提供的路径或logback-spring.xml文件中的路径。

例如:您的登录中的LOG_HOME配置为E:/ logs,但笔记本电脑/台式机中没有E:/驱动器。

由于这个原因,找不到匹配的URL,并且处理停止。

我也遇到了同样的问题,并且更正了logback-spring.xml文件中的路径。

谢谢!

关于, 阿努拉格

答案 1 :(得分:-3)

Spring Boot Developer Tools: Automatic Restart

  

使用spring-boot-devtools的应用程序将自动重启   每当类路径上的文件发生变化时。这可能是一个有用的功能   在 IDE 中工作时,因为它为代码提供了非常快速的反馈循环   变化。

此功能需要使用 IDE