diff --git a/.gradletasknamecache b/.gradletasknamecache new file mode 100644 index 000000000..1ed9ef802 --- /dev/null +++ b/.gradletasknamecache @@ -0,0 +1,315 @@ +All +assemble +spring-batch-core:assemble +spring-batch-core-tests:assemble +spring-batch-infrastructure:assemble +spring-batch-infrastructure-neo4j4:assemble +spring-batch-infrastructure-tests:assemble +spring-batch-integration:assemble +spring-batch-samples:assemble +spring-batch-test:assemble +spring-build-src:assemble +build +spring-batch-core:build +spring-batch-core-tests:build +spring-batch-infrastructure:build +spring-batch-infrastructure-neo4j4:build +spring-batch-infrastructure-tests:build +spring-batch-integration:build +spring-batch-samples:build +spring-batch-test:build +spring-build-src:build +spring-batch-core:buildDependents +spring-batch-core-tests:buildDependents +spring-batch-infrastructure:buildDependents +spring-batch-infrastructure-neo4j4:buildDependents +spring-batch-infrastructure-tests:buildDependents +spring-batch-integration:buildDependents +spring-batch-samples:buildDependents +spring-batch-test:buildDependents +spring-build-src:buildDependents +spring-batch-core:buildNeeded +spring-batch-core-tests:buildNeeded +spring-batch-infrastructure:buildNeeded +spring-batch-infrastructure-neo4j4:buildNeeded +spring-batch-infrastructure-tests:buildNeeded +spring-batch-integration:buildNeeded +spring-batch-samples:buildNeeded +spring-batch-test:buildNeeded +spring-build-src:buildNeeded +spring-batch-core:classes +spring-batch-core:compileJava +spring-batch-core:processResources +spring-batch-core-tests:classes +spring-batch-core-tests:compileJava +spring-batch-core-tests:processResources +spring-batch-infrastructure:classes +spring-batch-infrastructure:compileJava +spring-batch-infrastructure:processResources +spring-batch-infrastructure-neo4j4:classes +spring-batch-infrastructure-neo4j4:compileJava +spring-batch-infrastructure-neo4j4:processResources +spring-batch-infrastructure-tests:classes +spring-batch-infrastructure-tests:compileJava +spring-batch-infrastructure-tests:processResources +spring-batch-integration:classes +spring-batch-integration:compileJava +spring-batch-integration:processResources +spring-batch-samples:classes +spring-batch-samples:compileJava +spring-batch-samples:processResources +spring-batch-test:classes +spring-batch-test:compileJava +spring-batch-test:processResources +spring-build-src:classes +spring-build-src:compileGroovy +spring-build-src:compileJava +spring-build-src:processResources +spring-batch-core:generateSql +spring-batch-core:jar +spring-batch-core-tests:jar +spring-batch-infrastructure:jar +spring-batch-infrastructure-neo4j4:jar +spring-batch-infrastructure-tests:jar +spring-batch-integration:jar +spring-batch-samples:jar +spring-batch-test:jar +spring-build-src:jar +spring-batch-core:testClasses +spring-batch-core:compileTestJava +spring-batch-core:processTestResources +spring-batch-core-tests:testClasses +spring-batch-core-tests:compileTestJava +spring-batch-core-tests:processTestResources +spring-batch-infrastructure:testClasses +spring-batch-infrastructure:compileTestJava +spring-batch-infrastructure:processTestResources +spring-batch-infrastructure-neo4j4:testClasses +spring-batch-infrastructure-neo4j4:compileTestJava +spring-batch-infrastructure-neo4j4:processTestResources +spring-batch-infrastructure-tests:testClasses +spring-batch-infrastructure-tests:compileTestJava +spring-batch-infrastructure-tests:processTestResources +spring-batch-integration:testClasses +spring-batch-integration:compileTestJava +spring-batch-integration:processTestResources +spring-batch-samples:testClasses +spring-batch-samples:compileTestJava +spring-batch-samples:processTestResources +spring-batch-test:testClasses +spring-batch-test:compileTestJava +spring-batch-test:processTestResources +spring-build-src:testClasses +spring-build-src:compileTestGroovy +spring-build-src:compileTestJava +spring-build-src:processTestResources +init +depsZip +dist +distZip +docsZip +schemaZip +api +spring-build-src:groovydoc +spring-batch-core:javadoc +spring-batch-core-tests:javadoc +spring-batch-infrastructure:javadoc +spring-batch-infrastructure-neo4j4:javadoc +spring-batch-infrastructure-tests:javadoc +spring-batch-integration:javadoc +spring-batch-samples:javadoc +spring-batch-test:javadoc +spring-build-src:javadoc +reference +referenceEpub +referenceHtmlMulti +referenceHtmlSingle +referencePdf +components +spring-batch-core:components +spring-batch-core-tests:components +spring-batch-infrastructure:components +spring-batch-infrastructure-neo4j4:components +spring-batch-infrastructure-tests:components +spring-batch-integration:components +spring-batch-samples:components +spring-batch-test:components +spring-build-src:components +dependencies +spring-batch-core:dependencies +spring-batch-core-tests:dependencies +spring-batch-infrastructure:dependencies +spring-batch-infrastructure-neo4j4:dependencies +spring-batch-infrastructure-tests:dependencies +spring-batch-integration:dependencies +spring-batch-samples:dependencies +spring-batch-test:dependencies +spring-build-src:dependencies +dependencyInsight +spring-batch-core:dependencyInsight +spring-batch-core-tests:dependencyInsight +spring-batch-infrastructure:dependencyInsight +spring-batch-infrastructure-neo4j4:dependencyInsight +spring-batch-infrastructure-tests:dependencyInsight +spring-batch-integration:dependencyInsight +spring-batch-samples:dependencyInsight +spring-batch-test:dependencyInsight +spring-build-src:dependencyInsight +help +spring-batch-core:help +spring-batch-core-tests:help +spring-batch-infrastructure:help +spring-batch-infrastructure-neo4j4:help +spring-batch-infrastructure-tests:help +spring-batch-integration:help +spring-batch-samples:help +spring-batch-test:help +spring-build-src:help +model +spring-batch-core:model +spring-batch-core-tests:model +spring-batch-infrastructure:model +spring-batch-infrastructure-neo4j4:model +spring-batch-infrastructure-tests:model +spring-batch-integration:model +spring-batch-samples:model +spring-batch-test:model +spring-build-src:model +projects +spring-batch-core:projects +spring-batch-core-tests:projects +spring-batch-infrastructure:projects +spring-batch-infrastructure-neo4j4:projects +spring-batch-infrastructure-tests:projects +spring-batch-integration:projects +spring-batch-samples:projects +spring-batch-test:projects +spring-build-src:projects +properties +spring-batch-core:properties +spring-batch-core-tests:properties +spring-batch-infrastructure:properties +spring-batch-infrastructure-neo4j4:properties +spring-batch-infrastructure-tests:properties +spring-batch-integration:properties +spring-batch-samples:properties +spring-batch-test:properties +spring-build-src:properties +tasks +spring-batch-core:tasks +spring-batch-core-tests:tasks +spring-batch-infrastructure:tasks +spring-batch-infrastructure-neo4j4:tasks +spring-batch-infrastructure-tests:tasks +spring-batch-integration:tasks +spring-batch-samples:tasks +spring-batch-test:tasks +spring-build-src:tasks +spring-batch-core:cleanEclipse +spring-batch-core-tests:cleanEclipse +spring-batch-infrastructure:cleanEclipse +spring-batch-infrastructure-neo4j4:cleanEclipse +spring-batch-infrastructure-tests:cleanEclipse +spring-batch-integration:cleanEclipse +spring-batch-samples:cleanEclipse +spring-batch-test:cleanEclipse +cleanIdea +spring-batch-core:cleanIdea +spring-batch-core-tests:cleanIdea +spring-batch-infrastructure:cleanIdea +spring-batch-infrastructure-neo4j4:cleanIdea +spring-batch-infrastructure-tests:cleanIdea +spring-batch-integration:cleanIdea +spring-batch-samples:cleanIdea +spring-batch-test:cleanIdea +spring-batch-core:eclipse +spring-batch-core:eclipseClasspath +spring-batch-core:eclipseJdt +spring-batch-core:eclipseProject +spring-batch-core-tests:eclipse +spring-batch-core-tests:eclipseClasspath +spring-batch-core-tests:eclipseJdt +spring-batch-core-tests:eclipseProject +spring-batch-infrastructure:eclipse +spring-batch-infrastructure:eclipseClasspath +spring-batch-infrastructure:eclipseJdt +spring-batch-infrastructure:eclipseProject +spring-batch-infrastructure-neo4j4:eclipse +spring-batch-infrastructure-neo4j4:eclipseClasspath +spring-batch-infrastructure-neo4j4:eclipseJdt +spring-batch-infrastructure-neo4j4:eclipseProject +spring-batch-infrastructure-tests:eclipse +spring-batch-infrastructure-tests:eclipseClasspath +spring-batch-infrastructure-tests:eclipseJdt +spring-batch-infrastructure-tests:eclipseProject +spring-batch-integration:eclipse +spring-batch-integration:eclipseClasspath +spring-batch-integration:eclipseJdt +spring-batch-integration:eclipseProject +spring-batch-samples:eclipse +spring-batch-samples:eclipseClasspath +spring-batch-samples:eclipseJdt +spring-batch-samples:eclipseProject +spring-batch-test:eclipse +spring-batch-test:eclipseClasspath +spring-batch-test:eclipseJdt +spring-batch-test:eclipseProject +idea +ideaModule +ideaProject +ideaWorkspace +spring-batch-core:idea +spring-batch-core:ideaModule +spring-batch-core-tests:idea +spring-batch-core-tests:ideaModule +spring-batch-infrastructure:idea +spring-batch-infrastructure:ideaModule +spring-batch-infrastructure-neo4j4:idea +spring-batch-infrastructure-neo4j4:ideaModule +spring-batch-infrastructure-tests:idea +spring-batch-infrastructure-tests:ideaModule +spring-batch-integration:idea +spring-batch-integration:ideaModule +spring-batch-samples:idea +spring-batch-samples:ideaModule +spring-batch-test:idea +spring-batch-test:ideaModule +check +spring-batch-core:check +spring-batch-core-tests:check +spring-batch-infrastructure:check +spring-batch-infrastructure-neo4j4:check +spring-batch-infrastructure-tests:check +spring-batch-integration:check +spring-batch-samples:check +spring-batch-test:check +spring-build-src:check +clean +spring-batch-core:clean +spring-batch-core-tests:clean +spring-batch-infrastructure:clean +spring-batch-infrastructure-neo4j4:clean +spring-batch-infrastructure-tests:clean +spring-batch-integration:clean +spring-batch-samples:clean +spring-batch-test:clean +spring-build-src:clean +spring-batch-core:test +spring-batch-core-tests:test +spring-batch-infrastructure:test +spring-batch-infrastructure-neo4j4:test +spring-batch-infrastructure-tests:test +spring-batch-integration:test +spring-batch-samples:test +spring-batch-test:test +spring-build-src:test +spring-batch-core:install +spring-batch-core-tests:install +spring-batch-infrastructure:install +spring-batch-infrastructure-neo4j4:install +spring-batch-infrastructure-tests:install +spring-batch-integration:install +spring-batch-samples:install +spring-batch-test:install +sonarRunner +wrapper diff --git a/build.gradle b/build.gradle index df1b71eda..ca403009e 100644 --- a/build.gradle +++ b/build.gradle @@ -8,8 +8,8 @@ buildscript { maven { url 'https://repo.spring.io/plugins-release' } } dependencies { - classpath 'org.springframework.build.gradle:docbook-reference-plugin:0.2.8' - classpath 'org.springframework.build.gradle:propdeps-plugin:0.0.5' + classpath 'io.spring.gradle:docbook-reference-plugin:0.3.1' + classpath 'org.springframework.build.gradle:propdeps-plugin:0.0.7' classpath 'io.spring.gradle:spring-io-plugin:0.0.5.RELEASE' } } @@ -50,6 +50,7 @@ allprojects { springDataJpaVersion = '1.6.0.RELEASE' springDataMongodbVersion = '1.5.0.RELEASE' springDataNeo4jVersion = '3.1.0.RELEASE' + springDataNeo4j4Version = '4.1.1.RELEASE' springIntegrationVersion = '4.0.1.RELEASE' springLdapVersion = '2.0.2.RELEASE' @@ -62,7 +63,7 @@ allprojects { commonsLangVersion = '2.6' derbyVersion = '10.10.1.1' groovyVersion = '2.3.0' - hamcrestVersion = '1.3' + hamcrestVersion = '1.3' h2databaseVersion = '1.3.175' hibernateVersion = '4.2.12.Final' hibernateValidatorVersion = '4.3.1.Final' @@ -94,13 +95,14 @@ allprojects { } } -subprojects { subproject -> +configure(subprojects - project(":spring-build-src")) { subproject -> apply plugin: 'java' apply from: "${rootProject.projectDir}/publish-maven.gradle" apply plugin: 'jacoco' apply plugin: 'propdeps-idea' apply plugin: 'propdeps-eclipse' + apply plugin: 'merge' jacoco { toolVersion = "0.7.0.201403182114" @@ -231,6 +233,18 @@ configure(mainProjects) { } } +project("spring-build-src") { + description = "Exposes gradle buildSrc for IDE support" + apply plugin: "groovy" + + dependencies { + compile gradleApi() + compile localGroovy() + } + + configurations.archives.artifacts.clear() +} + project('spring-batch-core') { description = 'Spring Batch Core' @@ -263,7 +277,7 @@ project('spring-batch-core') { optional "org.slf4j:slf4j-log4j12:$slf4jVersion" optional "log4j:log4j:$log4jVersion" - provided "javax.batch:javax.batch-api:$javaxBatchApiVersion" + optional "javax.batch:javax.batch-api:$javaxBatchApiVersion" } } @@ -349,6 +363,17 @@ project('spring-batch-infrastructure') { } } +project('spring-batch-infrastructure-neo4j4') { + + merge.into = project(':spring-batch-infrastructure') + + dependencies { + optional "org.springframework.data:spring-data-neo4j:$springDataNeo4j4Version" + testCompile "org.mockito:mockito-core:$mockitoVersion" + testCompile "junit:junit:${junitVersion}" + } +} + project('spring-batch-core-tests') { description = 'Spring Batch Core Tests' project.tasks.findByPath("artifactoryPublish")?.enabled = false @@ -504,6 +529,8 @@ project('spring-batch-integration') { optional "log4j:log4j:1.2.14" optional "org.springframework.integration:spring-integration-jms:$springIntegrationVersion" optional "org.springframework:spring-jms:$springVersion" + + optional "javax.batch:javax.batch-api:$javaxBatchApiVersion" } } @@ -573,13 +600,13 @@ project('spring-batch-samples') { optional "org.springframework.amqp:spring-rabbit:$springAmqpVersion" optional "javax.inject:javax.inject:1" + optional "javax.batch:javax.batch-api:$javaxBatchApiVersion" } } apply plugin: 'docbook-reference' reference { - //sourceDir = file('src/reference/docbook') sourceDir = file('src/site/docbook/reference') } @@ -793,5 +820,5 @@ or specify the Gradle property `TCK_HOME`, e.g: ./gradlew runTck -PTCK_HOME=/pat task wrapper(type: Wrapper) { description = 'Generates gradlew[.bat] scripts' - gradleVersion = '1.11' + gradleVersion = '2.12' } diff --git a/buildSrc/src/main/groovy/org/springframework/build/gradle/MergePlugin.groovy b/buildSrc/src/main/groovy/org/springframework/build/gradle/MergePlugin.groovy new file mode 100644 index 000000000..1933dd0fb --- /dev/null +++ b/buildSrc/src/main/groovy/org/springframework/build/gradle/MergePlugin.groovy @@ -0,0 +1,159 @@ +/* + * Copyright 2002-2015 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.springframework.build.gradle + +import org.gradle.api.Project +import org.gradle.api.Action +import org.gradle.api.Plugin +import org.gradle.api.invocation.Gradle +import org.gradle.api.artifacts.Configuration +import org.gradle.api.artifacts.ProjectDependency +import org.gradle.api.artifacts.maven.Conf2ScopeMapping +import org.gradle.api.plugins.MavenPlugin +import org.gradle.plugins.ide.eclipse.EclipsePlugin +import org.gradle.plugins.ide.idea.IdeaPlugin +/** + * Gradle plugin that allows projects to merged together. Primarily developed to + * allow Spring to support multiple incompatible versions of third-party + * dependencies (for example Hibernate v3 and v4). + *

+ * The 'merge' extension should be used to define how projects are merged, for example: + *

+ * configure(subprojects) {
+ *     apply plugin: MergePlugin
+ * }
+ *
+ * project("myproject") {
+ * }
+ *
+ * project("myproject-extra") {
+ *     merge.into = project("myproject")
+ * }
+ * 
+ *

+ * This plugin adds two new configurations: + *