更新 当初、gradle ビルドの war ファイルの初期化時に Tomcat 例外が発生しました。著者の助けを借りて、現在、albiet を部分的に展開して実行しています。これは、Gradle のバグが原因である可能性があります。以下のサービスのルートで、更新された build.gradle および SpringData Rest 出力で編集します。
代わりに、Maven.. for Gradle で最初に記述された Spring Data Rest プロジェクトをコンパイルして実行しようとしています。
チュートリアルの場所 : http://www.javacodegeeks.com/2013/08/spring-data-rest-in-action.html
私のプロジェクトは、次の方法で戦争にうまく構築されます
* build.gradle *
buildscript {
repositories {
maven { url "http://repo.spring.io/libs-milestone" }
mavenLocal()
}
}
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'war'
war {
baseName = 'whichdegree-service'
version = '0.1.0'
}
repositories {
mavenCentral()
maven { url "http://repo.spring.io/libs-milestone" }
maven { url "https://repository.jboss.org/nexus/content/repositories/releases" }
}
dependencies {
compile("org.springframework.boot:spring-boot-starter-web:0.5.0.M5")
compile("org.springframework:spring-orm:4.0.0.M3")
compile("org.springframework.data:spring-data-jpa:1.3.2.RELEASE")
compile("org.springframework.data:spring-data-commons-core:1.3.2.RELEASE")
compile("org.hibernate:hibernate-entitymanager:4.2.1.Final")
//Added by author of tutorial
compile group: 'org.slf4j', name: 'slf4j-api', version: '1.7.+'
compile group: 'ch.qos.logback', name: 'logback-classic', version: '1.+'
//Spring-Data-REST, upgraded to 2.0.0 and Tomcat served war properly
compile("org.springframework.data:spring-data-rest-webmvc:2.0.0.M1")
//HSQL DB
compile("org.hsqldb:hsqldb:1.8.0.10")
testCompile("junit:junit:4.11")
}
task wrapper(type: Wrapper) {
gradleVersion = '1.8'
}
task copyDependencies(type: Copy) {
description = 'Copy dependencies to libs. Useful for Eclipse'
libDir = new File(project.projectDir, '/libs')
println libDir
println 'Adding dependencies from compile configuration'
for(file in configurations.compile) {
println 'Added ' + file
copy
{
from file
into libDir
}
}
}
Spring Data REST 固定デプロイの 2.0 バージョンに切り替えますが、サービスがアクティブまたは機能していないようです。
service_root/ での GET の期待される結果
{
"links" : [ {
"rel" : "books",
"href" : "http://localhost:8080/books"
}, {
"rel" : "authors",
"href" : "http://localhost:8080/authors"
} ],
"content" : [ ]
}
私のサービスでのGETの実際の結果
{
"links" : [ ],
"content" : [ ]
}
これはおそらくGradle自体のバグであり、Spring-Data-Restを適切に配線していないのではないかと思います..?