1

我有一个用 Yeoman 生成的 Backbone 应用程序。使用 Spring Boot Gradle 插件和 bootRun 任务来运行应用程序,当我对我的 JS 源进行更改并运行 Grunt 以将我的源重新编译/缩小到 dist 目录中时,这些更改不会反映在当前运行的 bootRun 任务中.

构建.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"
}

这是我用于映射“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);
    }
4

2 回答 2

1

我让你的应用程序运行,并验证src/main/resources可以重新加载提供的资源,但直到今天我才使用 Maven(这是一个关于那个的问题)。如果您想进一步讨论,我对 github 问题很好。

于 2014-01-14T19:47:03.503 回答
0

我创建了一个 Yeoman 插件,它做同样的事情,但使用 Maven。

我们有一个用 Maven 构建的 Spring Boot 后端,它与一个用 Grunt 构建的 AngularJS 前端配合得很好。

你可以在这里找到这个 Yeoman 生成器:https ://github.com/jhipster/generator-jhipster

于 2014-02-10T23:40:29.477 回答