A tarefa bootRun do plugin Spring Boot Gradle não reconhece quando arquivos estáticos são gerados por Yeoman e atualizados com grunhido

StackOverflow https://stackoverflow.com//questions/21047061

  •  21-12-2019
  •  | 
  •  

Pergunta

Eu tenho um aplicativo Backbone gerado com Yeoman.Usando o plug-in Spring Boot Gradle junto com a tarefa bootRun para executar o aplicativo, quando faço alterações em minha fonte JS e executo o Grunt para recompilar/minificar minha fonte no diretório dist, essas alterações não são refletidas na tarefa bootRun em execução no momento .

construir.gradle

buildscript {
    repositories {
        maven { url "http://repo.spring.io/snapshot" }
        maven { url "http://repo.spring.io/milestone" }
        mavenLocal()
    }
    dependencies {
        classpath "org.springframework.boot:spring-boot-gradle-plugin:0.5.0.M7"
    }
}

apply plugin: "java"
apply plugin: "idea"
apply plugin: "spring-boot"
apply plugin: "war"

war {
    baseName = "mis-support-client"
    version =  "1.0.0-SNAPSHOT"
    includes = ["dist/**"]
}

repositories {
    mavenCentral()
    maven { url "http://repo.spring.io/libs-snapshot" }
}

dependencies {
    testCompile "junit:junit:4.11" 

    compile ("org.springframework.boot:spring-boot-starter-web:0.5.0.M7") {
        exclude module: "spring-boot-starter-tomcat"
    }
    compile "org.springframework.boot:spring-boot-starter-jetty:0.5.0.M7"
    compile "org.springframework.boot:spring-boot-starter-security:0.5.0.M7"
    compile "org.springframework.boot:spring-boot-starter-websocket:0.5.0.M7" 
    compile "javax.inject:javax.inject:1"
    compile "org.codehaus.jackson:jackson-mapper-asl:1.9.12"
    compile "org.apache.httpcomponents:httpclient:4.3.1"
    compile "commons-io:commons-io:2.4"
}

task wrapper (type: Wrapper) {
    gradleVersion = "1.8"
}

Aqui estão meus manipuladores de recursos do cliente para mapear o diretório “dist”.

@Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/bower_components/**", "/scripts/**", "/styles/**", "/fonts/**", "/font/**")
                .addResourceLocations("/dist/bower_components/", "/dist/scripts/", "/dist/styles/", "/dist/bower_components/bootstrap/fonts/", "/dist/bower_components/font-awesome/font/")
                .setCachePeriod(315569126);
    }
Foi útil?

Solução

Coloquei seu aplicativo em execução e verifiquei que os recursos servidos por src/main/resources pode ser recarregado, mas até hoje só se eu usar o Maven (aqui está um questão sobre isso).A questão do github está bem para mim se você quiser discutir mais.

Outras dicas

Criei um plugin Yeoman que faz exatamente a mesma coisa, mas com Maven.

Temos um backend Spring Boot, construído com Maven, que funciona muito bem com um frontend AngularJS, construído com Grunt.

Você pode encontrar este gerador Yeoman aqui: https://github.com/jhipster/generator-jhipster

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top