Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Gradle服务于前端(JS)和后端API(Java)_Java_Spring_Gradle - Fatal编程技术网

使用Gradle服务于前端(JS)和后端API(Java)

使用Gradle服务于前端(JS)和后端API(Java),java,spring,gradle,Java,Spring,Gradle,我正在尝试使用Gradle创建一个web应用程序。前端UI将使用Angular.js构建,后端应为Java。当我说后端时,我指的是一个基于Java/Spring的API,它将使用Angular.js中的Ajax进行查询 因此,基本上我想做的是让任何以mysite.com/api/…开头的URL路由到src/com/veight/client文件,或者换句话说,路由到Java后端。然后任何其他URL,如mysite.com/login,都应该由JavaScript/Angular.js前端处理 我

我正在尝试使用Gradle创建一个web应用程序。前端UI将使用Angular.js构建,后端应为Java。当我说后端时,我指的是一个基于Java/Spring的API,它将使用Angular.js中的Ajax进行查询

因此,基本上我想做的是让任何以
mysite.com/api/…
开头的URL路由到
src/com/veight/client
文件,或者换句话说,路由到Java后端。然后任何其他URL,如
mysite.com/login
,都应该由JavaScript/Angular.js前端处理

我使用下面的build.gradle文件使JavaScript/Angular.js路由用于前端。我应该如何将匹配
mysite.com/api/…
的路由发送到Java/Spring后端

谢谢你的帮助

注意:我知道JavaSpring自然会执行这种路由,它将某些路由
mysite.com/home
发送到一个文件夹,而其他路由
mysite.com/api/…
则通过一个xml文件处理。但是我认为可以在build.gradle文件中处理这个问题。所以我希望证明/反驳这个理论

文件结构

.gradle
.settings
build
gradle
src
    com
        veight
            client
WebContent
这是我的身材。格雷德尔:

buildscript {
    repositories {
        jcenter()
        mavenCentral()
    }

    dependencies {
        classpath 'org.gradle.api.plugins:gradle-tomcat-plugin:1.2.4' // Gradle Tomcat Plugin
        classpath 'com.eriwen:gradle-css-plugin:1.11.1'
        classpath 'com.eriwen:gradle-js-plugin:1.12.0'
    }
}

apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'tomcat'
apply plugin: 'eclipse-wtp'
apply plugin: 'js'
apply plugin: 'css'

sourceCompatibility = 1.7
version = '1.0'

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

repositories {
    mavenCentral() // Allow access to the Maven Centeral Repo
}

dependencies {
    def tomcatVersion = '7.0.54'
    tomcat "org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}",
            "org.apache.tomcat.embed:tomcat-embed-logging-juli:${tomcatVersion}"
    tomcat("org.apache.tomcat.embed:tomcat-embed-jasper:${tomcatVersion}") {
        exclude group: 'org.eclipse.jdt.core.compiler', module: 'ecj'
    }
}
sourceSets {
    main {
        java {
            srcDirs 'src'
        }
    }
}
// End: Java Plugin Configuration

// Start: Tomcat Plugin Configuration
tomcatRun {
    httpPort = 8080
    stopPort = 8081
    URIEncoding = 'utf-8'
    webAppSourceDirectory = file('WebContent')
}
eclipse {
  wtp {
    component {
      contextPath = '/'
      deployName = 'client'
    }
  }
}

Rachel,你成功地将前端和后端集成到一个gradle构建中了吗?@Kane善意地告诉我你做到了吗??我也在寻找同样的东西,我已经使用Gradle和Spring FW制作了API,现在我想为这个API制作面板,用于更新、插入和删除方法。对不起,我再也无法访问这个项目中的代码了:(这是很久以前的事了,从那以后我再也没有这样做过。