一尘不染

IntelliJ 15,SpringBoot devtools livereload不起作用

spring-boot

Spring Boot devtools 1.3的新LiveReload功能存在问题。它不会在类更改时重新加载。我已经看到它与IntelliJ @
Devoxx 2015一起演示过。我需要启用一些IDE设置吗?我正在通过IDE运行,而不是通过Gradle运行。我尝试启用“自动创建项目”,但似乎无济于事。

它似乎已正确加载并且正在寻找正确的路径

2015-11-23 05:55:30.592 DEBUG 4700 --- [  restartedMain] o.s.boot.devtools.restart.Restarter      : Starting application com.myapp.Application with URLs [file:/E:/Projects/myapp/build/classes/main/, file:/E:/Projects/myapp/build/resources/main/]

我的文件

build.gradle

buildscript {
    ext {
        springBootVersion = '1.3.0.RELEASE'
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") 
    }
}

apply plugin: 'java'
apply plugin: 'eclipse-wtp'
apply plugin: 'idea'
apply plugin: 'spring-boot' 
apply plugin: 'war'


war {
    baseName = 'myapp'
    version = '0.0.1-SNAPSHOT'
}
sourceCompatibility = 1.8
targetCompatibility = 1.8

repositories {
    mavenCentral()
    maven { url "https://repo.spring.io/snapshot" }
    maven { url "https://repo.spring.io/milestone" }
}

configurations {
    providedRuntime
}

dependencies {
    compile('org.springframework.boot:spring-boot-starter-actuator')
    compile('org.springframework.boot:spring-boot-devtools')
    compile('org.springframework.boot:spring-boot-starter-jdbc')
    compile('org.projectlombok:lombok')
    compile('org.springframework.boot:spring-boot-starter-web')
    compile('net.sourceforge.jtds:jtds:1.3.1');
    testCompile('org.springframework.boot:spring-boot-starter-test') 
}

dependencyManagement {
    imports { 
        mavenBom "org.springframework.cloud:spring-cloud-starter-parent:Brixton.M3" 
    }
}


eclipse {
    classpath {
         containers.remove('org.eclipse.jdt.launching.JRE_CONTAINER')
         containers 'org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8'
    }
}

task wrapper(type: Wrapper) {
    gradleVersion = '2.7'
}

HelloWorldController

@Controller
public class HelloWorldController {

    @RequestMapping("/")
    @ResponseBody
    String home(){

        return "Hello World test";
    }
}

阅读 584

收藏
2020-05-30

共1个答案

一尘不染

我猜您正在编写代码,并期望DevTools自动神奇地发现您已更改了项目中的某些内容?Devtools通过查看您的classpath文件夹来做到这一点。当一个.class文件(或资源)已经改变,devtools采取了恰当的行动。

如果您什么都没看到,那可能是因为您只是在编码而不更新类路径。您必须调用 Make Project 来更新类路径。请参阅
说明文件

2020-05-30