Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

INT-2512 - Upgrade to Gradle 1.0-rc-1 #402

Closed
wants to merge 5 commits into from
+1,016 −1,015

3 participants

@ghillert
Owner
  • Upgrade Gradle Wrapper
  • Remove deprecation warnings
  • Fix Sonar Build

Depends on: spring-projects/gradle-plugins#1

@cbeams I am not fully sure, yet, on the way I am declaring dependencies optional or provided. Spring's approach looks possibly cleaner.

Gunnar Hillert added some commits
Gunnar Hillert INT-2512 - Upgrade to Gradle 1.0-rc-1
* Upgrade Gradle Wrapper
* Remove deprecation warnings
* Fix Sonar Build

Depends on: spring-projects/gradle-plugins#1
05bdaff
Gunnar Hillert INT-2512 - Improve declaration of optional and provided dependencies a046e97
Gunnar Hillert INT-2512 - Reverted Bundlor Plugin Version Number.
With that change the Spring Integration specific part of the code changes is decoupled from the Bundlor pull request:

spring-projects/gradle-plugins#1
.
Once the Bundlor plugin is updated and released, I can bump the version number (Only then, though all deprecation warnings will be gone).
b16d41b
@ghillert
Owner

Reverted Bundlor Plugin Version Number.
With that change the Spring Integration specific part of the code changes is decoupled from the Bundlor pull request:

spring-projects/gradle-plugins#1

Thus, the PR can be merged without depending on the Bundlor PR.

Once the Bundlor plugin is updated and released, I can bump the version number (Only then, though all deprecation warnings will be gone).

build.gradle
@@ -5,11 +5,12 @@ apply plugin: 'idea'
buildscript {
repositories {
+ mavenLocal()
@garyrussell Owner

Do we really want to add mavenlocal() permanently? I usually add it locally when I need it.

Also, this file is using non-standard leading spaces instead of tabs - this line has tabs. We should either make this use spaces or, preferably, convert the file to use tabs.

@cbeams
cbeams added a note

mavenLocal() is best added through a gradle init script. here's the relevant section from mine (~/.gradle/init.gradle):

    // always add mavenLocal to the set of buildscript repositories in
    // order to pick up locally published snapshots, etc
    allprojects {
        buildscript {
            repositories {
                mavenLocal()
            }
        }
    }

If the file is named init.gradle, it's applied automatically. You probably already have one in place for Artifactory authentication purposes. Just add that bit to it and you're good.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
build.gradle
((5 lines not shown))
maven { url 'https://repo.springsource.org/plugins-snapshot' }
}
dependencies {
classpath 'org.springframework.build.gradle:bundlor-plugin:0.1.2-SNAPSHOT'
- classpath 'org.springframework.build.gradle:docbook-reference-plugin:0.1.3'
+ classpath 'org.springframework.build.gradle:docbook-reference-plugin:0.1.5-SNAPSHOT'
@garyrussell Owner

snapshot?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
build.gradle
((26 lines not shown))
+ easymockVersion = '2.3'
+ groovyVersion = '1.8.5'
+ jacksonVersion = '1.9.2'
+ javaxActivationVersion = '1.1.1'
+ junitVersion = '4.8.2'
+ log4jVersion = '1.2.12'
+ mockitoVersion = '1.9.0'
+ springVersion = '3.0.7.RELEASE'
+ springAmqpVersion = '1.0.0.RELEASE'
+ springDataMongoVersion = '1.0.0.RELEASE'
+ springDataRedisVersion = '1.0.0.RELEASE'
+ springGemfireVersion = '1.1.0.RELEASE'
+ springSecurityVersion = '3.1.0.RELEASE'
+ springSocialTwitterVersion = '1.0.1.RELEASE'
+ springWsVersion = '2.0.3.RELEASE'
+ }
@garyrussell Owner

mixed leading tabs and spaces

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
@garyrussell garyrussell commented on the diff
build.gradle
@@ -123,11 +126,6 @@ subprojects { subproject ->
archives javadocJar
}
- install {
- repositories.mavenInstaller {
- customizePom(pom, subproject)
- }
- }
@garyrussell Owner

Why are we removing this? Don't we need a local install any more?

[Edit: Oops - I see it moved - my comment about the commit comment still holds, though]

Gunnar,

Given the nature of this change, I think you need to make a much more comprehensive commit commit - at least to provide a pointer as to why each of these changes is being made. I don't have the benefit of the knowledge you gained while making this change so you need to give me some help understanding it.

Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Gunnar Hillert INT-2512 - Code Review
**Do we really want to add mavenlocal() permanently? I usually add it locally when I need it**

Sorry my bad. Forgot to remove my local addition.

**snapshot?**

The Bundlor plugin relies on Snapshot releases for the Gradle plugin (I reverted the DocBook version).

**mixed leading tabs and spaces**

Removed every single leading space. Unfortunately, there were lots of spaces. Took a while. I hope this looks much better.

**Why are we removing this? Don't we need a local install any more?**

The Maven install logic is now handled by the customized/extended "maven" plugin in **publish-maven.gradle**. This is how Chris has set it up for the Spring Framework.
0675cce
@ghillert
Owner

@garyrussell Please see my commit and the commit message for details. I hope this is much better.

build.gradle
@@ -4,1139 +4,1065 @@ apply plugin: 'base'
apply plugin: 'idea'
buildscript {
- repositories {
- maven { url 'https://repo.springsource.org/plugins-snapshot' }
- }
- dependencies {
- classpath 'org.springframework.build.gradle:bundlor-plugin:0.1.2-SNAPSHOT'
- classpath 'org.springframework.build.gradle:docbook-reference-plugin:0.1.3'
- }
+ repositories {
+ mavenLocal()
@garyrussell Owner

mavenLocal() is still here - your comment said you'd remove it. Also, see Chris' comment about tailoring locally.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
@garyrussell garyrussell commented on the diff
build.gradle
((683 lines not shown))
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'javax.servlet.*;version="[2.4.0, 3.0.0)";resolution:=optional',
- 'javax.xml.*;version="0"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration HTTP Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-webmvc:$springVersion"
+ compile("javax.servlet:servlet-api:2.4", provided)
+ compile("commons-httpclient:commons-httpclient:3.1") { dep ->
+ optional dep
+ exclude group: 'junit', module: 'junit'
+ }
+ compile("net.java.dev.rome:rome-fetcher:1.0.0") { dep ->
@garyrussell Owner

Just making a comment here - for the record - as a non-groovy person, I find this obvious...

compile("commons-httpclient:commons-httpclient:3.1") {
    optional = true
    exclude group: 'junit', module: 'junit'
}

whereas

compile("commons-httpclient:commons-httpclient:3.1") { dep ->
        optional dep
        exclude group: 'junit', module: 'junit'
}

looks Martian to me.

@cbeams
cbeams added a note

I agree. However, this is a tradeoff in favor of very nice syntax the majority of the time, e.g.

compile("org.springframework:spring-tx:$springVersion", optional)

in exchange for a slightly more cryptic approach when exclusions are involved, e.g.

compile("commons-httpclient:commons-httpclient:3.1") { dep ->
        optional dep
        exclude group: 'junit', module: 'junit'
}

The previous approach was that one must use the following syntax even for the simplest optional / provided scenarios

compile ("net.java.dev.rome:rome:1.0.0") { optional = true }

I (and afaict, others) prefer the more compact approach that one achieves (most of the time) with this:

    compile ("net.java.dev.rome:rome:1.0.0", optional)

btw, see http://issues.gradle.org/browse/GRADLE-784 for lots of background on these approaches and a request for first-class support from Gradle itself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
@garyrussell garyrussell commented on the diff
build.gradle
((1,484 lines not shown))
- }
- compile("com.sun.xml.messaging.saaj:saaj-impl:1.3") { optional = true }
- compile("javax.activation:activation:$javaxActivationVersion") { optional = true }
- testCompile project(":spring-integration-test")
- testCompile "stax:stax-api:1.0.1"
- testCompile "xstream:xstream:1.2.2"
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.ws'
- importTemplate += [
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.core.convert;version="[3.0.5, 4.0.0)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
@ghillert Owner

I tried :-) In the olden days there was a property "buildDirName" which does not work anymore. "buildDir" however resolves to the absolute name which does not work. I think the problem is that the sonar plugin is not well implemented in regards to Gradle. Basically, props["sonar.jacoco.reportPath"] is applied for all sub-modules but configured under the root module.

Thus, I need the pure name "build" not the absolute path. And since I did not see some build-in function that does the conversion I went the path of least resistance and just hard-coded "build".

@garyrussell Owner

Can you explain further? I just ran a build with ${buildDir} against my local sonar server and it seemed to work just fine - what error should I be looking for?

@ghillert Owner

I will check again. But what is the code-coverage percentage you are getting? The problem I remember seing was that the coverage was 0% when using ${buildDir}. It took me a few minutes to figure out the issue. I don't think there were any errors or warnings.

@garyrussell Owner

Hi Gunnar, I am still not comfortable merging this hard-coded value; I ran some tests and $buildDir causes it to look in the parent directory, not the module.

Given that $buildDir is a java.io.File, we can use ${buildDir.name} because File.getName() returns just the last part of the path (build), which is the same as your hard-coded value. I just tested this with my local Sonar install and it worked fine.

I know you are traveling, but I want to get this merged. If you don't object in the next hour or so, I will make this change while squashing for the merge.

Gary

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on Apr 15, 2012
  1. INT-2512 - Upgrade to Gradle 1.0-rc-1

    Gunnar Hillert authored
    * Upgrade Gradle Wrapper
    * Remove deprecation warnings
    * Fix Sonar Build
    
    Depends on: spring-projects/gradle-plugins#1
Commits on Apr 16, 2012
Commits on Apr 17, 2012
  1. INT-2512 - Reverted Bundlor Plugin Version Number.

    Gunnar Hillert authored
    With that change the Spring Integration specific part of the code changes is decoupled from the Bundlor pull request:
    
    spring-projects/gradle-plugins#1
    .
    Once the Bundlor plugin is updated and released, I can bump the version number (Only then, though all deprecation warnings will be gone).
Commits on Apr 18, 2012
  1. INT-2512 - Code Review

    Gunnar Hillert authored
    **Do we really want to add mavenlocal() permanently? I usually add it locally when I need it**
    
    Sorry my bad. Forgot to remove my local addition.
    
    **snapshot?**
    
    The Bundlor plugin relies on Snapshot releases for the Gradle plugin (I reverted the DocBook version).
    
    **mixed leading tabs and spaces**
    
    Removed every single leading space. Unfortunately, there were lots of spaces. Took a while. I hope this looks much better.
    
    **Why are we removing this? Don't we need a local install any more?**
    
    The Maven install logic is now handled by the customized/extended "maven" plugin in **publish-maven.gradle**. This is how Chris has set it up for the Spring Framework.
  2. INT-2512 - Remove mavenLocal()

    Gunnar Hillert authored
This page is out of date. Refresh to see the latest.
View
BIN  .wrapper/gradle-wrapper.jar
Binary file not shown
View
4 .wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Thu Jan 12 12:49:02 CET 2012
+#Sat Apr 14 14:52:58 EDT 2012
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=http\://repo.gradle.org/gradle/distributions-snapshots/gradle-1.0-milestone-8-20120112000036+0100-bin.zip
+distributionUrl=http\://services.gradle.org/distributions/gradle-1.0-rc-1-bin.zip
View
1,949 build.gradle
@@ -4,1139 +4,1064 @@ apply plugin: 'base'
apply plugin: 'idea'
buildscript {
- repositories {
- maven { url 'https://repo.springsource.org/plugins-snapshot' }
- }
- dependencies {
- classpath 'org.springframework.build.gradle:bundlor-plugin:0.1.2-SNAPSHOT'
- classpath 'org.springframework.build.gradle:docbook-reference-plugin:0.1.3'
- }
+ repositories {
+ maven { url 'https://repo.springsource.org/plugins-snapshot' }
+ }
+ dependencies {
+ classpath 'org.springframework.build.gradle:bundlor-plugin:0.1.2-SNAPSHOT'
+ classpath 'org.springframework.build.gradle:docbook-reference-plugin:0.1.3'
+ }
}
allprojects {
- group = 'org.springframework.integration'
+ group = 'org.springframework.integration'
- repositories {
- maven { url 'http://repo.springsource.org/libs-milestone' }
- maven { url 'http://repo.springsource.org/plugins-release' } // for bundlor
- }
+ repositories {
+ maven { url 'http://repo.springsource.org/libs-milestone' }
+ maven { url 'http://repo.springsource.org/plugins-release' } // for bundlor
+ }
}
subprojects { subproject ->
- apply plugin: 'java'
- apply plugin: 'maven'
- apply plugin: 'eclipse'
- apply plugin: 'idea'
- apply plugin: 'bundlor'
-
- // ensure JDK 5 compatibility (GRADLE-18; INT-1578)
- sourceCompatibility=1.5
- targetCompatibility=1.5
-
- aspectjVersion = '1.6.8'
- cglibVersion = '2.2'
- commonsNetVersion = '3.0.1'
- easymockVersion = '2.3'
- groovyVersion = '1.8.5'
- jacksonVersion = '1.9.2'
- javaxActivationVersion = '1.1.1'
- junitVersion = '4.8.2'
- log4jVersion = '1.2.12'
- mockitoVersion = '1.9.0'
- springVersion = '3.0.7.RELEASE'
- springAmqpVersion = '1.0.0.RELEASE'
- springDataMongoVersion = '1.0.0.RELEASE'
- springDataRedisVersion = '1.0.0.RELEASE'
- springGemfireVersion = '1.1.0.RELEASE'
- springSecurityVersion = '3.1.0.RELEASE'
- springSocialTwitterVersion = '1.0.1.RELEASE'
- springWsVersion = '2.0.3.RELEASE'
-
- eclipse {
- project {
- natures += 'org.springframework.ide.eclipse.core.springnature'
- }
- }
-
- sourceSets {
- test {
- resources {
- srcDirs = ['src/test/resources', 'src/test/java']
- }
- }
- }
-
- // See http://www.gradle.org/docs/current/userguide/dependency_management.html#sub:configurations
- // and http://www.gradle.org/docs/current/dsl/org.gradle.api.artifacts.ConfigurationContainer.html
- configurations {
- jacoco //Configuration Group used by Sonar to provide Code Coverage using JaCoCo
- }
-
- // dependencies that are common across all java projects
- dependencies {
- testCompile "cglib:cglib-nodep:$cglibVersion"
- testCompile "junit:junit-dep:$junitVersion"
- testCompile "log4j:log4j:$log4jVersion"
- testCompile "org.easymock:easymock:$easymockVersion"
- testCompile "org.easymock:easymockclassextension:$easymockVersion"
- testCompile "org.hamcrest:hamcrest-all:1.1"
- testCompile "org.mockito:mockito-all:$mockitoVersion"
- testCompile "org.springframework:spring-test:$springVersion"
- jacoco group: "org.jacoco", name: "org.jacoco.agent", version: "0.5.3.201107060350", classifier: "runtime"
- }
-
- // enable all compiler warnings; individual projects may customize further
- xLintArg = '-Xlint:all'
- [compileJava, compileTestJava]*.options*.compilerArgs = [xLintArg]
-
- test {
- // suppress all console output during testing unless running `gradle -i`
- logging.captureStandardOutput(LogLevel.INFO)
- jvmArgs "-javaagent:${configurations.jacoco.asPath}=destfile=${buildDir}/jacoco.exec,includes=org.springframework.integration.*"
- }
-
- bundlor {
- enabled = true
- failOnWarnings = true
- bundleManifestVersion = 2
- bundleVendor = 'SpringSource'
- bundleName = project.description
- bundleVersion = project.version
- importTemplate = [
- 'org.apache.log4j.*;version="['+log4jVersion+'], 2.0.0)"'
- ]
- }
-
- task sourcesJar(type: Jar) {
- classifier = 'sources'
- from sourceSets.main.allJava
- }
-
- task javadocJar(type: Jar) {
- classifier = 'javadoc'
- from javadoc
- }
-
- artifacts {
- archives sourcesJar
- archives javadocJar
- }
-
- install {
- repositories.mavenInstaller {
- customizePom(pom, subproject)
- }
- }
@garyrussell Owner

Why are we removing this? Don't we need a local install any more?

[Edit: Oops - I see it moved - my comment about the commit comment still holds, though]

Gunnar,

Given the nature of this change, I think you need to make a much more comprehensive commit commit - at least to provide a pointer as to why each of these changes is being made. I don't have the benefit of the knowledge you gained while making this change so you need to give me some help understanding it.

Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
+ apply plugin: 'java'
+ apply from: "${rootProject.projectDir}/publish-maven.gradle"
+ apply plugin: 'eclipse'
+ apply plugin: 'idea'
+ apply plugin: 'bundlor'
+
+ // ensure JDK 5 compatibility (GRADLE-18; INT-1578)
+ sourceCompatibility=1.5
+ targetCompatibility=1.5
+
+ ext {
+ aspectjVersion = '1.6.8'
+ cglibVersion = '2.2'
+ commonsNetVersion = '3.0.1'
+ easymockVersion = '2.3'
+ groovyVersion = '1.8.5'
+ jacksonVersion = '1.9.2'
+ javaxActivationVersion = '1.1.1'
+ junitVersion = '4.8.2'
+ log4jVersion = '1.2.12'
+ mockitoVersion = '1.9.0'
+ springVersion = '3.0.7.RELEASE'
+ springAmqpVersion = '1.0.0.RELEASE'
+ springDataMongoVersion = '1.0.0.RELEASE'
+ springDataRedisVersion = '1.0.0.RELEASE'
+ springGemfireVersion = '1.1.0.RELEASE'
+ springSecurityVersion = '3.1.0.RELEASE'
+ springSocialTwitterVersion = '1.0.1.RELEASE'
+ springWsVersion = '2.0.3.RELEASE'
+ }
+
+ eclipse {
+ project {
+ natures += 'org.springframework.ide.eclipse.core.springnature'
+ }
+ }
+
+ sourceSets {
+ test {
+ resources {
+ srcDirs = ['src/test/resources', 'src/test/java']
+ }
+ }
+ }
+
+ // See http://www.gradle.org/docs/current/userguide/dependency_management.html#sub:configurations
+ // and http://www.gradle.org/docs/current/dsl/org.gradle.api.artifacts.ConfigurationContainer.html
+ configurations {
+ jacoco //Configuration Group used by Sonar to provide Code Coverage using JaCoCo
+ }
+
+ // dependencies that are common across all java projects
+ dependencies {
+ testCompile "cglib:cglib-nodep:$cglibVersion"
+ testCompile "junit:junit-dep:$junitVersion"
+ testCompile "log4j:log4j:$log4jVersion"
+ testCompile "org.easymock:easymock:$easymockVersion"
+ testCompile "org.easymock:easymockclassextension:$easymockVersion"
+ testCompile "org.hamcrest:hamcrest-all:1.1"
+ testCompile "org.mockito:mockito-all:$mockitoVersion"
+ testCompile "org.springframework:spring-test:$springVersion"
+ jacoco group: "org.jacoco", name: "org.jacoco.agent", version: "0.5.6.201201232323", classifier: "runtime"
+ }
+
+ // enable all compiler warnings; individual projects may customize further
+ ext.xLintArg = '-Xlint:all'
+ [compileJava, compileTestJava]*.options*.compilerArgs = [xLintArg]
+
+ test {
+ // suppress all console output during testing unless running `gradle -i`
+ logging.captureStandardOutput(LogLevel.INFO)
+ jvmArgs "-javaagent:${configurations.jacoco.asPath}=destfile=${buildDir}/jacoco.exec,includes=org.springframework.integration.*"
+ }
+
+ bundlor {
+ enabled = true
+ failOnWarnings = true
+ bundleManifestVersion = 2
+ bundleVendor = 'SpringSource'
+ bundleName = project.description
+ bundleVersion = project.version
+ importTemplate = [
+ 'org.apache.log4j.*;version="['+log4jVersion+'], 2.0.0)"'
+ ]
+ }
+
+ task sourcesJar(type: Jar) {
+ classifier = 'sources'
+ from sourceSets.main.allJava
+ }
+
+ task javadocJar(type: Jar) {
+ classifier = 'javadoc'
+ from javadoc
+ }
+
+ artifacts {
+ archives sourcesJar
+ archives javadocJar
+ }
+
}
project('spring-integration-amqp') {
- description = 'Spring Integration AMQP Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-tx:$springVersion"
- compile("org.codehaus.jackson:jackson-mapper-asl:$jacksonVersion") { optional = true }
- compile("org.springframework.amqp:spring-rabbit:$springAmqpVersion") {
- exclude group: 'org.springframework', module: 'spring-aop'
- exclude group: 'org.springframework', module: 'spring-beans'
- exclude group: 'org.springframework', module: 'spring-context'
- exclude group: 'org.springframework', module: 'spring-core'
- exclude group: 'org.springframework', module: 'spring-oxm'
- exclude group: 'org.springframework', module: 'spring-tx'
- }
- testCompile project(":spring-integration-stream")
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.amqp'
- importTemplate += [
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.apache.commons.lang.*;version="[2.5.0, 3.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.transaction.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'org.springframework.amqp.*;version="[1.0.0, 2.0.0)"',
- 'org.aopalliance.*;version="[1.0.0, 2.0.0)"',
- 'javax.*;version="0"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration AMQP Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-tx:$springVersion"
+ compile("org.codehaus.jackson:jackson-mapper-asl:$jacksonVersion", optional)
+ compile("org.springframework.amqp:spring-rabbit:$springAmqpVersion") {
+ exclude group: 'org.springframework', module: 'spring-aop'
+ exclude group: 'org.springframework', module: 'spring-beans'
+ exclude group: 'org.springframework', module: 'spring-context'
+ exclude group: 'org.springframework', module: 'spring-core'
+ exclude group: 'org.springframework', module: 'spring-oxm'
+ exclude group: 'org.springframework', module: 'spring-tx'
+ }
+ testCompile project(":spring-integration-stream")
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.amqp'
+ importTemplate += [
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.apache.commons.lang.*;version="[2.5.0, 3.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.transaction.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.amqp.*;version="[1.0.0, 2.0.0)"',
+ 'org.aopalliance.*;version="[1.0.0, 2.0.0)"',
+ 'javax.*;version="0"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-core') {
- description = 'Spring Integration Core'
- dependencies {
- compile "org.springframework:spring-aop:$springVersion"
- compile "org.springframework:spring-context:$springVersion"
- compile("org.springframework:spring-tx:$springVersion") { optional = true }
- compile("org.codehaus.jackson:jackson-mapper-asl:$jacksonVersion") { optional = true }
- testCompile "org.aspectj:aspectjrt:$aspectjVersion"
- testCompile "org.aspectj:aspectjweaver:$aspectjVersion"
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration'
- importTemplate += [
- 'org.springframework.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.transaction;version="[3.0.5, 4.0.0)";resolution:=optional',
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.aopalliance.*;version="[1.0.0, 2.0.0)"',
- 'org.codehaus.jackson.*;version="[1.0.0, 2.0.0)";resolution:=optional',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration Core'
+ dependencies {
+ compile "org.springframework:spring-aop:$springVersion"
+ compile "org.springframework:spring-context:$springVersion"
+ compile("org.springframework:spring-tx:$springVersion", optional)
+ compile("org.codehaus.jackson:jackson-mapper-asl:$jacksonVersion", optional)
+ testCompile "org.aspectj:aspectjrt:$aspectjVersion"
+ testCompile "org.aspectj:aspectjweaver:$aspectjVersion"
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration'
+ importTemplate += [
+ 'org.springframework.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.transaction;version="[3.0.5, 4.0.0)";resolution:=optional',
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.aopalliance.*;version="[1.0.0, 2.0.0)"',
+ 'org.codehaus.jackson.*;version="[1.0.0, 2.0.0)";resolution:=optional',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-event') {
- description = 'Spring Integration ApplicationEvent Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-context:$springVersion"
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.event'
- importTemplate += [
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration ApplicationEvent Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-context:$springVersion"
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.event'
+ importTemplate += [
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-feed') {
- description = 'Spring Integration RSS Feed Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-context:$springVersion"
- compile("net.java.dev.rome:rome-fetcher:1.0.0") {
- exclude group: 'junit', module: 'junit'
- }
- compile "net.java.dev.rome:rome:1.0.0"
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.feed'
- importTemplate += [
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.apache.commons.lang.*;version="[2.5.0, 3.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'com.sun.syndication.*;version="[1.0.0, 2.0.0)"',
- 'javax.*;version="0"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration RSS Feed Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-context:$springVersion"
+ compile("net.java.dev.rome:rome-fetcher:1.0.0") {
+ exclude group: 'junit', module: 'junit'
+ }
+ compile "net.java.dev.rome:rome:1.0.0"
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.feed'
+ importTemplate += [
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.apache.commons.lang.*;version="[2.5.0, 3.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'com.sun.syndication.*;version="[1.0.0, 2.0.0)"',
+ 'javax.*;version="0"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-file') {
- description = 'Spring Integration File Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-context:$springVersion"
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.file'
- importTemplate += [
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.transaction.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util.xml;version="[3.0.5, 4.0.0)"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration File Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-context:$springVersion"
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.file'
+ importTemplate += [
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.transaction.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util.xml;version="[3.0.5, 4.0.0)"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-ftp') {
- description = 'Spring Integration FTP Support'
- dependencies {
- compile project(":spring-integration-file")
- compile "commons-net:commons-net:$commonsNetVersion"
- compile "org.springframework:spring-context-support:$springVersion"
- compile("javax.activation:activation:$javaxActivationVersion") { optional = true }
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.ftp'
- importTemplate += [
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.apache.commons.net.*;version="[2.0.0, 3.1.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'javax.*;version="0"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration FTP Support'
+ dependencies {
+ compile project(":spring-integration-file")
+ compile "commons-net:commons-net:$commonsNetVersion"
+ compile "org.springframework:spring-context-support:$springVersion"
+ compile("javax.activation:activation:$javaxActivationVersion", optional)
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.ftp'
+ importTemplate += [
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.apache.commons.net.*;version="[2.0.0, 3.1.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'javax.*;version="0"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-gemfire') {
- description = 'Spring Integration GemFire Support'
- test {
- forkEvery = 1
- systemProperties['gemfire.disableShutdownHook'] = 'true'
- }
- dependencies {
- compile project(":spring-integration-core")
- compile ("org.springframework.data:spring-data-gemfire:$springGemfireVersion") {
- exclude group: 'org.springframework', module: 'spring-context-support'
- exclude group: 'org.springframework', module: 'spring-core'
- exclude group: 'org.springframework', module: 'spring-tx'
- }
- compile "org.springframework:spring-tx:$springVersion"
- testCompile project(":spring-integration-stream")
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.gemfire'
- importTemplate += [
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.data.gemfire.*;version="[1.0.1, 2.0.0)"',
- 'com.gemstone.gemfire.*;version="[6.5.1, 7.0.0)"',
- 'javax.*;version="0"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration GemFire Support'
+ test {
+ forkEvery = 1
+ systemProperties['gemfire.disableShutdownHook'] = 'true'
+ }
+ dependencies {
+ compile project(":spring-integration-core")
+ compile ("org.springframework.data:spring-data-gemfire:$springGemfireVersion") {
+ exclude group: 'org.springframework', module: 'spring-context-support'
+ exclude group: 'org.springframework', module: 'spring-core'
+ exclude group: 'org.springframework', module: 'spring-tx'
+ }
+ compile "org.springframework:spring-tx:$springVersion"
+ testCompile project(":spring-integration-stream")
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.gemfire'
+ importTemplate += [
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.data.gemfire.*;version="[1.0.1, 2.0.0)"',
+ 'com.gemstone.gemfire.*;version="[6.5.1, 7.0.0)"',
+ 'javax.*;version="0"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-groovy') {
- description = 'Spring Integration Groovy Support'
- dependencies {
- compile project(":spring-integration-core")
- compile project(":spring-integration-scripting")
- compile "org.codehaus.groovy:groovy-all:$groovyVersion"
- compile "org.springframework:spring-context-support:$springVersion"
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.groovy'
- importTemplate += [
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.*;version="[3.0.5, 4.0.0)"',
- 'groovy.*;version="[1.7.3, 2.0.0)"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration Groovy Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile project(":spring-integration-scripting")
+ compile "org.codehaus.groovy:groovy-all:$groovyVersion"
+ compile "org.springframework:spring-context-support:$springVersion"
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.groovy'
+ importTemplate += [
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.*;version="[3.0.5, 4.0.0)"',
+ 'groovy.*;version="[1.7.3, 2.0.0)"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-http') {
- description = 'Spring Integration HTTP Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-webmvc:$springVersion"
- compile("javax.servlet:servlet-api:2.4") { provided = true }
- compile("commons-httpclient:commons-httpclient:3.1") {
- optional = true
- exclude group: 'junit', module: 'junit'
- }
- compile("net.java.dev.rome:rome-fetcher:1.0.0") {
- optional = true
- exclude group: 'junit', module: 'junit'
- }
- compile ("net.java.dev.rome:rome:1.0.0") { optional = true }
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.http'
- importTemplate += [
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.http.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.validation.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.web.*;version="[3.0.5, 4.0.0)";resolution:=optional',
- 'org.apache.commons.httpclient.*;version="[3.0.5, 4.0.0)"',
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'javax.servlet.*;version="[2.4.0, 3.0.0)";resolution:=optional',
- 'javax.xml.*;version="0"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration HTTP Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-webmvc:$springVersion"
+ compile("javax.servlet:servlet-api:2.4", provided)
+ compile("commons-httpclient:commons-httpclient:3.1") { dep ->
+ optional dep
+ exclude group: 'junit', module: 'junit'
+ }
+ compile("net.java.dev.rome:rome-fetcher:1.0.0") { dep ->
@garyrussell Owner

Just making a comment here - for the record - as a non-groovy person, I find this obvious...

compile("commons-httpclient:commons-httpclient:3.1") {
    optional = true
    exclude group: 'junit', module: 'junit'
}

whereas

compile("commons-httpclient:commons-httpclient:3.1") { dep ->
        optional dep
        exclude group: 'junit', module: 'junit'
}

looks Martian to me.

@cbeams
cbeams added a note

I agree. However, this is a tradeoff in favor of very nice syntax the majority of the time, e.g.

compile("org.springframework:spring-tx:$springVersion", optional)

in exchange for a slightly more cryptic approach when exclusions are involved, e.g.

compile("commons-httpclient:commons-httpclient:3.1") { dep ->
        optional dep
        exclude group: 'junit', module: 'junit'
}

The previous approach was that one must use the following syntax even for the simplest optional / provided scenarios

compile ("net.java.dev.rome:rome:1.0.0") { optional = true }

I (and afaict, others) prefer the more compact approach that one achieves (most of the time) with this:

    compile ("net.java.dev.rome:rome:1.0.0", optional)

btw, see http://issues.gradle.org/browse/GRADLE-784 for lots of background on these approaches and a request for first-class support from Gradle itself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
+ optional dep
+ exclude group: 'junit', module: 'junit'
+ }
+ compile ("net.java.dev.rome:rome:1.0.0", optional)
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.http'
+ importTemplate += [
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.http.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.validation.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.web.*;version="[3.0.5, 4.0.0)";resolution:=optional',
+ 'org.apache.commons.httpclient.*;version="[3.0.5, 4.0.0)"',
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'javax.servlet.*;version="[2.4.0, 3.0.0)";resolution:=optional',
+ 'javax.xml.*;version="0"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-ip') {
- description = 'Spring Integration IP Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-context:$springVersion"
- runtime project(":spring-integration-stream")
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.ip'
- importTemplate += [
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'org.springframework.jmx.*;version="[3.0.5, 4.0.0)"',
- 'org.w3c.dom.*;version="0"',
- 'javax.net.*;version="0"'
- ]
- }
+ description = 'Spring Integration IP Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-context:$springVersion"
+ runtime project(":spring-integration-stream")
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.ip'
+ importTemplate += [
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.jmx.*;version="[3.0.5, 4.0.0)"',
+ 'org.w3c.dom.*;version="0"',
+ 'javax.net.*;version="0"'
+ ]
+ }
}
project('spring-integration-jdbc') {
- description = 'Spring Integration JDBC Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-aop:$springVersion"
- compile "org.springframework:spring-jdbc:$springVersion"
- compile "org.springframework:spring-tx:$springVersion"
- testCompile project(":spring-integration-test")
- testCompile "com.h2database:h2:1.3.160"
- testCompile "hsqldb:hsqldb:1.8.0.10"
- testCompile "org.apache.derby:derby:10.5.3.0_1"
- testCompile "org.aspectj:aspectjrt:$aspectjVersion"
- testCompile "org.aspectj:aspectjweaver:$aspectjVersion"
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.jdbc'
- importTemplate += [
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.*;version="[3.0.5, 4.0.0)"',
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.aopalliance.*;version="[1.0.0, 2.0.0)"',
- 'javax.sql.*;version="0"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
-
- // suppress derby localization jar path warnings during test compilation
- compileTestJava.options.compilerArgs = ["${xLintArg},-path"]
+ description = 'Spring Integration JDBC Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-aop:$springVersion"
+ compile "org.springframework:spring-jdbc:$springVersion"
+ compile "org.springframework:spring-tx:$springVersion"
+ testCompile project(":spring-integration-test")
+ testCompile "com.h2database:h2:1.3.160"
+ testCompile "hsqldb:hsqldb:1.8.0.10"
+ testCompile "org.apache.derby:derby:10.5.3.0_1"
+ testCompile "org.aspectj:aspectjrt:$aspectjVersion"
+ testCompile "org.aspectj:aspectjweaver:$aspectjVersion"
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.jdbc'
+ importTemplate += [
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.*;version="[3.0.5, 4.0.0)"',
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.aopalliance.*;version="[1.0.0, 2.0.0)"',
+ 'javax.sql.*;version="0"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
+
+ // suppress derby localization jar path warnings during test compilation
+ compileTestJava.options.compilerArgs = ["${xLintArg},-path"]
}
project('spring-integration-jms') {
- description = 'Spring Integration JMS Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-jms:$springVersion"
- compile "org.springframework:spring-tx:$springVersion"
- compile ("org.apache.geronimo.specs:geronimo-jms_1.1_spec:1.1") { provided = true }
- testCompile project(":spring-integration-test")
- testCompile ("org.apache.activemq:activemq-core:5.3.0") {
- exclude group: 'org.springframework', module: 'spring-context'
- }
-
- testCompile "org.springframework:spring-oxm:$springVersion"
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.jms'
- importTemplate += [
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.jms.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.transaction.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'javax.jms;version="[1.1.0, 2.0.0)";resolution:=optional',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration JMS Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-jms:$springVersion"
+ compile "org.springframework:spring-tx:$springVersion"
+ compile ("org.apache.geronimo.specs:geronimo-jms_1.1_spec:1.1", provided)
+ testCompile project(":spring-integration-test")
+ testCompile ("org.apache.activemq:activemq-core:5.3.0") {
+ exclude group: 'org.springframework', module: 'spring-context'
+ }
+ testCompile "org.springframework:spring-oxm:$springVersion"
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.jms'
+ importTemplate += [
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.jms.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.transaction.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'javax.jms;version="[1.1.0, 2.0.0)";resolution:=optional',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-jmx') {
- description = 'Spring Integration JMX Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.aspectj:aspectjrt:$aspectjVersion"
- compile "org.aspectj:aspectjweaver:$aspectjVersion"
- compile "org.springframework:spring-context:$springVersion"
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.jmx'
- importTemplate += [
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.*;version="[3.0.5, 4.0.0)"',
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.aopalliance.*;version="[1.0.0, 2.0.0)"',
- 'javax.management.*;version="0"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration JMX Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.aspectj:aspectjrt:$aspectjVersion"
+ compile "org.aspectj:aspectjweaver:$aspectjVersion"
+ compile "org.springframework:spring-context:$springVersion"
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.jmx'
+ importTemplate += [
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.*;version="[3.0.5, 4.0.0)"',
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.aopalliance.*;version="[1.0.0, 2.0.0)"',
+ 'javax.management.*;version="0"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-mail') {
- description = 'Spring Integration Mail Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-context-support:$springVersion"
- compile("javax.mail:mail:1.4.4") { provided = true }
- compile("javax.activation:activation:$javaxActivationVersion") { optional = true }
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.mail'
- importTemplate += [
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.mail.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util.*;version="[3.0.5, 4.0.0)"',
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'javax.mail.*;version="[1.4.0, 2.0.0)"',
- 'com.sun.mail.imap.*;version="[1.4.0, 2.0.0)";resolution:=optional',
- 'org.w3c.dom.*;version="0"'
- ]
- }
-
- // suppress javax.activation path warnings
- [compileJava,compileTestJava]*.options*.compilerArgs = ["${xLintArg},-path"]
+ description = 'Spring Integration Mail Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-context-support:$springVersion"
+ compile("javax.mail:mail:1.4.4", provided)
+ compile("javax.activation:activation:$javaxActivationVersion", optional)
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.mail'
+ importTemplate += [
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.mail.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util.*;version="[3.0.5, 4.0.0)"',
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'javax.mail.*;version="[1.4.0, 2.0.0)"',
+ 'com.sun.mail.imap.*;version="[1.4.0, 2.0.0)";resolution:=optional',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
+
+ // suppress javax.activation path warnings
+ [compileJava,compileTestJava]*.options*.compilerArgs = ["${xLintArg},-path"]
}
project('spring-integration-mongodb') {
- description = 'Spring Integration MongoDB Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-tx:$springVersion"
- compile("org.springframework.data:spring-data-mongodb:$springDataMongoVersion") {
- exclude group: 'org.springframework', module: 'spring-aop'
- exclude group: 'org.springframework', module: 'spring-asm'
- exclude group: 'org.springframework', module: 'spring-beans'
- exclude group: 'org.springframework', module: 'spring-context'
- exclude group: 'org.springframework', module: 'spring-core'
- exclude group: 'org.springframework', module: 'spring-expression'
- exclude group: 'org.springframework', module: 'spring-tx'
- }
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.mongodb'
- importTemplate += [
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'org.springframework.jmx.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.data.mongodb.*;version="[1.0.0, 2.0.0)"',
- 'org.springframework.data.mapping.*;version="[1.0.0, 2.0.0)"',
- 'org.springframework.data.annotation.*;version="[1.0.0, 2.0.0)"',
- 'com.mongodb.*;version="[0.0.0, 2.5.0]"',
- 'javax.*;version="0"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration MongoDB Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-tx:$springVersion"
+ compile("org.springframework.data:spring-data-mongodb:$springDataMongoVersion") {
+ exclude group: 'org.springframework', module: 'spring-aop'
+ exclude group: 'org.springframework', module: 'spring-asm'
+ exclude group: 'org.springframework', module: 'spring-beans'
+ exclude group: 'org.springframework', module: 'spring-context'
+ exclude group: 'org.springframework', module: 'spring-core'
+ exclude group: 'org.springframework', module: 'spring-expression'
+ exclude group: 'org.springframework', module: 'spring-tx'
+ }
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.mongodb'
+ importTemplate += [
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.jmx.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.data.mongodb.*;version="[1.0.0, 2.0.0)"',
+ 'org.springframework.data.mapping.*;version="[1.0.0, 2.0.0)"',
+ 'org.springframework.data.annotation.*;version="[1.0.0, 2.0.0)"',
+ 'com.mongodb.*;version="[0.0.0, 2.5.0]"',
+ 'javax.*;version="0"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-redis') {
- description = 'Spring Integration Redis Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-tx:$springVersion"
- compile("org.codehaus.jackson:jackson-mapper-asl:$jacksonVersion")
- compile("org.codehaus.jackson:jackson-core-asl:$jacksonVersion")
- compile ("org.springframework.data:spring-data-redis:$springDataRedisVersion") {
- exclude group: 'org.springframework', module: 'spring-core'
- exclude group: 'org.springframework', module: 'spring-context-support'
- exclude group: 'org.springframework', module: 'spring-beans'
- exclude group: 'org.springframework', module: 'spring-tx'
- }
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.redis'
- importTemplate += [
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'org.springframework.data.redis.*;version="[1.0.0, 2.0.0)"',
- 'javax.*;version="0"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration Redis Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-tx:$springVersion"
+ compile("org.codehaus.jackson:jackson-mapper-asl:$jacksonVersion")
+ compile("org.codehaus.jackson:jackson-core-asl:$jacksonVersion")
+ compile ("org.springframework.data:spring-data-redis:$springDataRedisVersion") {
+ exclude group: 'org.springframework', module: 'spring-core'
+ exclude group: 'org.springframework', module: 'spring-context-support'
+ exclude group: 'org.springframework', module: 'spring-beans'
+ exclude group: 'org.springframework', module: 'spring-tx'
+ }
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.redis'
+ importTemplate += [
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.data.redis.*;version="[1.0.0, 2.0.0)"',
+ 'javax.*;version="0"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-rmi') {
- description = 'Spring Integration RMI Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-aop:$springVersion"
- compile "org.springframework:spring-context:$springVersion"
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.rmi'
- importTemplate += [
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.remoting.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
-
- // suppress deprecation warnings (@SuppressWarnings("deprecation") is not enough for javac)
- compileJava.options.compilerArgs = ["${xLintArg},-deprecation"]
+ description = 'Spring Integration RMI Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-aop:$springVersion"
+ compile "org.springframework:spring-context:$springVersion"
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.rmi'
+ importTemplate += [
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.remoting.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
+
+ // suppress deprecation warnings (@SuppressWarnings("deprecation") is not enough for javac)
+ compileJava.options.compilerArgs = ["${xLintArg},-deprecation"]
}
project('spring-integration-scripting') {
- description = 'Spring Integration Scripting Support'
- dependencies {
- compile project(":spring-integration-core")
- testCompile project(":spring-integration-test")
- testCompile("org.jruby:jruby:1.6.3")
- testCompile("org.codehaus.groovy:groovy-all:$groovyVersion")
- testCompile("org.python:jython-standalone:2.5.2")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.scripting'
- importTemplate += [
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.*;version="[3.0.5, 4.0.0)"',
- 'org.w3c.dom.*;version="0"',
- 'javax.script.*;version="0"'
- ]
- }
+ description = 'Spring Integration Scripting Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ testCompile project(":spring-integration-test")
+ testCompile("org.jruby:jruby:1.6.3")
+ testCompile("org.codehaus.groovy:groovy-all:$groovyVersion")
+ testCompile("org.python:jython-standalone:2.5.2")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.scripting'
+ importTemplate += [
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.*;version="[3.0.5, 4.0.0)"',
+ 'org.w3c.dom.*;version="0"',
+ 'javax.script.*;version="0"'
+ ]
+ }
}
project('spring-integration-security') {
- description = 'Spring Integration Security Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-aop:$springVersion"
- compile "org.springframework:spring-tx:$springVersion"
- compile("org.springframework.security:spring-security-core:$springSecurityVersion") {
- exclude group: 'org.springframework', module: 'spring-support'
- }
- compile("org.springframework.security:spring-security-config:$springSecurityVersion") {
- exclude group: 'org.springframework', module: 'spring-support'
- }
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.security'
- importTemplate += [
- 'org.aopalliance.*;version="[1.0.0, 2.0.0)"',
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.springframework.aop.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.security.*;version="[3.0.3, 4.0.0)"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration Security Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-aop:$springVersion"
+ compile "org.springframework:spring-tx:$springVersion"
+ compile("org.springframework.security:spring-security-core:$springSecurityVersion") {
+ exclude group: 'org.springframework', module: 'spring-support'
+ }
+ compile("org.springframework.security:spring-security-config:$springSecurityVersion") {
+ exclude group: 'org.springframework', module: 'spring-support'
+ }
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.security'
+ importTemplate += [
+ 'org.aopalliance.*;version="[1.0.0, 2.0.0)"',
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.springframework.aop.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.security.*;version="[3.0.3, 4.0.0)"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-sftp') {
- description = 'Spring Integration SFTP Support'
- dependencies {
- compile project(":spring-integration-core")
- compile project(":spring-integration-file")
- compile project(":spring-integration-stream")
- compile "com.jcraft:jsch:0.1.45"
- compile "org.springframework:spring-context-support:$springVersion"
- compile("javax.activation:activation:$javaxActivationVersion") { optional = true }
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.sftp'
- importTemplate += [
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'com.jcraft.jsch.*;version="[0.1.41, 0.1.50)"',
- 'javax.*;version="0"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration SFTP Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile project(":spring-integration-file")
+ compile project(":spring-integration-stream")
+ compile "com.jcraft:jsch:0.1.45"
+ compile "org.springframework:spring-context-support:$springVersion"
+ compile("javax.activation:activation:$javaxActivationVersion", optional)
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.sftp'
+ importTemplate += [
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'com.jcraft.jsch.*;version="[0.1.41, 0.1.50)"',
+ 'javax.*;version="0"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-stream') {
- description = 'Spring Integration Stream Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-context:$springVersion"
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.stream'
- importTemplate += [
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration Stream Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-context:$springVersion"
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.stream'
+ importTemplate += [
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-test') {
- description = 'Spring Integration Test Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "junit:junit-dep:$junitVersion"
- compile "org.mockito:mockito-all:$mockitoVersion"
- compile "org.springframework:spring-context:$springVersion"
- compile "org.springframework:spring-test:$springVersion"
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.test'
- importTemplate += [
- 'org.apache.tools.ant.*;version="[1.7.0, 2.0.0)"',
- 'org.springframework.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'junit.framework.*;version="[4.6.0, 4.7.0)"',
- 'org.junit.*;version="[4.6.0, 4.7.0)"',
- 'org.mockito.*;version="[1.6.0, 2.0.0)"',
- 'org.hamcrest.*;version="[1.1.0, 1.1.0]"',
- 'org.objenesis.*;version="[1.0.0, 2.0.0)"'
- ]
- }
+ description = 'Spring Integration Test Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "junit:junit-dep:$junitVersion"
+ compile "org.mockito:mockito-all:$mockitoVersion"
+ compile "org.springframework:spring-context:$springVersion"
+ compile "org.springframework:spring-test:$springVersion"
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.test'
+ importTemplate += [
+ 'org.apache.tools.ant.*;version="[1.7.0, 2.0.0)"',
+ 'org.springframework.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'junit.framework.*;version="[4.6.0, 4.7.0)"',
+ 'org.junit.*;version="[4.6.0, 4.7.0)"',
+ 'org.mockito.*;version="[1.6.0, 2.0.0)"',
+ 'org.hamcrest.*;version="[1.1.0, 1.1.0]"',
+ 'org.objenesis.*;version="[1.0.0, 2.0.0)"'
+ ]
+ }
}
project('spring-integration-twitter') {
- description = 'Spring Integration Twitter Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-web:$springVersion"
- compile("org.springframework.social:spring-social-twitter:$springSocialTwitterVersion") {
- exclude group: 'org.springframework', module: 'spring-aop'
- exclude group: 'org.springframework', module: 'spring-asm'
- exclude group: 'org.springframework', module: 'spring-beans'
- exclude group: 'org.springframework', module: 'spring-context'
- exclude group: 'org.springframework', module: 'spring-core'
- exclude group: 'org.springframework', module: 'spring-expression'
- exclude group: 'org.springframework', module: 'spring-web'
- }
- compile("javax.activation:activation:$javaxActivationVersion") { optional = true }
- testCompile project(":spring-integration-test")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.twitter'
- importTemplate += [
- 'org.aopalliance.*;version="[1.0.0, 2.0.0)"',
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.aop.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.social.*;version="[1.0.0, 1.1.0)"',
- 'org.springframework.security.crypto.*;version="[3.1.0, 3.2.0)"',
- 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'javax.*;version="0"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
+ description = 'Spring Integration Twitter Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-web:$springVersion"
+ compile("org.springframework.social:spring-social-twitter:$springSocialTwitterVersion") {
+ exclude group: 'org.springframework', module: 'spring-aop'
+ exclude group: 'org.springframework', module: 'spring-asm'
+ exclude group: 'org.springframework', module: 'spring-beans'
+ exclude group: 'org.springframework', module: 'spring-context'
+ exclude group: 'org.springframework', module: 'spring-core'
+ exclude group: 'org.springframework', module: 'spring-expression'
+ exclude group: 'org.springframework', module: 'spring-web'
+ }
+ compile("javax.activation:activation:$javaxActivationVersion", optional)
+ testCompile project(":spring-integration-test")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.twitter'
+ importTemplate += [
+ 'org.aopalliance.*;version="[1.0.0, 2.0.0)"',
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.aop.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.social.*;version="[1.0.0, 1.1.0)"',
+ 'org.springframework.security.crypto.*;version="[3.1.0, 3.2.0)"',
+ 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'javax.*;version="0"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
}
project('spring-integration-ws') {
- description = 'Spring Integration Web Services Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-expression:$springVersion"
- compile "org.springframework:spring-oxm:$springVersion"
- compile "org.springframework:spring-web:$springVersion"
- compile ("org.springframework.ws:spring-ws-core:$springWsVersion") {
- exclude group: 'org.springframework', module: 'spring-webmvc'
- exclude group: 'org.springframework', module: 'spring-web'
- exclude group: 'org.springframework', module: 'spring-context-support'
- }
- compile("javax.xml.soap:saaj-api:1.3") {
- optional = true
- exclude group: 'javax.activation', module: 'activation'
- }
- compile("com.sun.xml.messaging.saaj:saaj-impl:1.3") { optional = true }
- compile("javax.activation:activation:$javaxActivationVersion") { optional = true }
- testCompile project(":spring-integration-test")
- testCompile "stax:stax-api:1.0.1"
- testCompile "xstream:xstream:1.2.2"
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.ws'
- importTemplate += [
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.core.convert;version="[3.0.5, 4.0.0)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.web.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.oxm;version="[1.5.9, 3.1.0)"',
- 'org.springframework.ws.*;version="[2.0.0, 2.1.0)"',
- 'org.springframework.xml.*;version="[1.5.9, 2.1.0)"',
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.w3c.dom.*;version="0"',
- 'javax.xml.*;version="0"'
- ]
- }
-
- // suppress saaj path warnings
- [compileJava,compileTestJava]*.options*.compilerArgs = ["${xLintArg},-path"]
+ description = 'Spring Integration Web Services Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-expression:$springVersion"
+ compile "org.springframework:spring-oxm:$springVersion"
+ compile "org.springframework:spring-web:$springVersion"
+ compile ("org.springframework.ws:spring-ws-core:$springWsVersion") {
+ exclude group: 'org.springframework', module: 'spring-webmvc'
+ exclude group: 'org.springframework', module: 'spring-web'
+ exclude group: 'org.springframework', module: 'spring-context-support'
+ }
+ compile("javax.xml.soap:saaj-api:1.3") { dep ->
+ optional dep
+ exclude group: 'javax.activation', module: 'activation'
+ }
+ compile("com.sun.xml.messaging.saaj:saaj-impl:1.3", optional)
+ compile("javax.activation:activation:$javaxActivationVersion", optional)
+ testCompile project(":spring-integration-test")
+ testCompile "stax:stax-api:1.0.1"
+ testCompile "xstream:xstream:1.2.2"
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.ws'
+ importTemplate += [
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.core.convert;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.scheduling.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.web.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.oxm;version="[1.5.9, 3.1.0)"',
+ 'org.springframework.ws.*;version="[2.0.0, 2.1.0)"',
+ 'org.springframework.xml.*;version="[1.5.9, 2.1.0)"',
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.w3c.dom.*;version="0"',
+ 'javax.xml.*;version="0"'
+ ]
+ }
+
+ // suppress saaj path warnings
+ [compileJava,compileTestJava]*.options*.compilerArgs = ["${xLintArg},-path"]
}
project('spring-integration-xml') {
- description = 'Spring Integration XML Support'
- dependencies {
- compile project(":spring-integration-core")
- compile "org.springframework:spring-context:$springVersion"
- compile "org.springframework:spring-oxm:$springVersion"
- compile ("org.springframework.ws:spring-xml:$springWsVersion") {
- exclude group: 'org.springframework', module: 'spring-beans'
- exclude group: 'org.springframework', module: 'spring-core'
- }
- compile("javax.activation:activation:$javaxActivationVersion") { optional = true }
- testCompile project(":spring-integration-test")
- testCompile "xmlunit:xmlunit:1.3"
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.xml'
- importTemplate += [
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context.expression.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.oxm;version="[1.5.9, 3.1.0)";resolution:=optional',
- 'org.springframework.xml.*;version="[1.5.9, 2.1.0)"',
- 'org.apache.commons.logging.*;version="[1.0, 2.0)"',
- 'org.w3c.dom.*;version="0"',
- 'org.xml.sax.*;version="0"',
- 'javax.xml.*;version="0"'
- ]
- }
+ description = 'Spring Integration XML Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile "org.springframework:spring-context:$springVersion"
+ compile "org.springframework:spring-oxm:$springVersion"
+ compile ("org.springframework.ws:spring-xml:$springWsVersion") {
+ exclude group: 'org.springframework', module: 'spring-beans'
+ exclude group: 'org.springframework', module: 'spring-core'
+ }
+ compile("javax.activation:activation:$javaxActivationVersion", optional)
+ testCompile project(":spring-integration-test")
+ testCompile "xmlunit:xmlunit:1.3"
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.xml'
+ importTemplate += [
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context.expression.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.expression.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.oxm;version="[1.5.9, 3.1.0)";resolution:=optional',
+ 'org.springframework.xml.*;version="[1.5.9, 2.1.0)"',
+ 'org.apache.commons.logging.*;version="[1.0, 2.0)"',
+ 'org.w3c.dom.*;version="0"',
+ 'org.xml.sax.*;version="0"',
+ 'javax.xml.*;version="0"'
+ ]
+ }
}
project('spring-integration-xmpp') {
- description = 'Spring Integration XMPP Support'
- dependencies {
- compile project(":spring-integration-core")
- compile("javax.activation:activation:$javaxActivationVersion") { optional = true }
- compile "org.igniterealtime.smack:smack:3.2.1"
- compile "org.igniterealtime.smack:smackx:3.2.1"
- compile "org.springframework:spring-context-support:$springVersion"
- testCompile project(":spring-integration-test")
- testCompile project(":spring-integration-stream")
- }
- bundlor {
- bundleSymbolicName = 'org.springframework.integration.xmpp'
- importTemplate += [
- 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
- 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
- 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.context;version="[3.0.5, 4.0.0)"',
- 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
- 'org.springframework.util;version="[3.0.5, 4.0.0)"',
- 'org.jivesoftware.*;version="[3.0.5, 4.0.0)"',
- 'javax.*;version="0"',
- 'org.w3c.dom.*;version="0"'
- ]
- }
-
- // suppress smack path warnings
- [compileJava,compileTestJava]*.options*.compilerArgs = ["${xLintArg},-path"]
+ description = 'Spring Integration XMPP Support'
+ dependencies {
+ compile project(":spring-integration-core")
+ compile("javax.activation:activation:$javaxActivationVersion", optional)
+ compile "org.igniterealtime.smack:smack:3.2.1"
+ compile "org.igniterealtime.smack:smackx:3.2.1"
+ compile "org.springframework:spring-context-support:$springVersion"
+ testCompile project(":spring-integration-test")
+ testCompile project(":spring-integration-stream")
+ }
+ bundlor {
+ bundleSymbolicName = 'org.springframework.integration.xmpp'
+ importTemplate += [
+ 'org.apache.commons.logging;version="[1.1.1, 2.0.0)"',
+ 'org.springframework.integration.*;version="[2.1.0, 2.1.1)"',
+ 'org.springframework.beans.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.context;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.core.*;version="[3.0.5, 4.0.0)"',
+ 'org.springframework.util;version="[3.0.5, 4.0.0)"',
+ 'org.jivesoftware.*;version="[3.0.5, 4.0.0)"',
+ 'javax.*;version="0"',
+ 'org.w3c.dom.*;version="0"'
+ ]
+ }
+
+ // suppress smack path warnings
+ [compileJava,compileTestJava]*.options*.compilerArgs = ["${xLintArg},-path"]
}
apply plugin: 'docbook-reference'
reference {
- sourceDir = file('src/reference/docbook')
+ sourceDir = file('src/reference/docbook')
}
apply plugin: 'sonar'
sonar {
- if (rootProject.hasProperty('sonarHostUrl')) {
- server.url = rootProject.sonarHostUrl
- }
-
- database {
- if (rootProject.hasProperty('sonarJdbcUrl')) {
- url = rootProject.sonarJdbcUrl
- }
- if (rootProject.hasProperty('sonarJdbcDriver')) {
- driverClassName = rootProject.sonarJdbcDriver
- }
- if (rootProject.hasProperty('sonarJdbcUsername')) {
- username = rootProject.sonarJdbcUsername
- }
- if (rootProject.hasProperty('sonarJdbcPassword')) {
- password = rootProject.sonarJdbcPassword
- }
- }
-
- project {
- dynamicAnalysis = "reuseReports"
- withProjectProperties { props ->
- props["sonar.core.codeCoveragePlugin"] = "jacoco"
- props["sonar.jacoco.reportPath"] = "${buildDirName}/jacoco.exec"
- }
- }
-
- logger.info("Sonar parameters used: server.url='${server.url}'; database.url='${database.url}'; database.driverClassName='${database.driverClassName}'; database.username='${database.username}'")
-
+ if (rootProject.hasProperty('sonarHostUrl')) {
+ server.url = rootProject.sonarHostUrl
+ }
+
+ database {
+ if (rootProject.hasProperty('sonarJdbcUrl')) {
+ url = rootProject.sonarJdbcUrl
+ }
+ if (rootProject.hasProperty('sonarJdbcDriver')) {
+ driverClassName = rootProject.sonarJdbcDriver
+ }
+ if (rootProject.hasProperty('sonarJdbcUsername')) {
+ username = rootProject.sonarJdbcUsername
+ }
+ if (rootProject.hasProperty('sonarJdbcPassword')) {
+ password = rootProject.sonarJdbcPassword
+ }
+ }
+
+ project {
+ dynamicAnalysis = "reuseReports"
+ withProjectProperties { props ->
+ props["sonar.core.codeCoveragePlugin"] = "jacoco"
+ props["sonar.jacoco.reportPath"] = "build/jacoco.exec"
+ }
@ghillert Owner

I tried :-) In the olden days there was a property "buildDirName" which does not work anymore. "buildDir" however resolves to the absolute name which does not work. I think the problem is that the sonar plugin is not well implemented in regards to Gradle. Basically, props["sonar.jacoco.reportPath"] is applied for all sub-modules but configured under the root module.

Thus, I need the pure name "build" not the absolute path. And since I did not see some build-in function that does the conversion I went the path of least resistance and just hard-coded "build".

@garyrussell Owner

Can you explain further? I just ran a build with ${buildDir} against my local sonar server and it seemed to work just fine - what error should I be looking for?

@ghillert Owner

I will check again. But what is the code-coverage percentage you are getting? The problem I remember seing was that the coverage was 0% when using ${buildDir}. It took me a few minutes to figure out the issue. I don't think there were any errors or warnings.

@garyrussell Owner

Hi Gunnar, I am still not comfortable merging this hard-coded value; I ran some tests and $buildDir causes it to look in the parent directory, not the module.

Given that $buildDir is a java.io.File, we can use ${buildDir.name} because File.getName() returns just the last part of the path (build), which is the same as your hard-coded value. I just tested this with my local Sonar install and it worked fine.

I know you are traveling, but I want to get this merged. If you don't object in the next hour or so, I will make this change while squashing for the merge.

Gary

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
+ }
+
+ logger.info("Sonar parameters used: server.url='${server.url}'; database.url='${database.url}'; database.driverClassName='${database.driverClassName}'; database.username='${database.username}'")
}
task api(type: Javadoc) {
- group = 'Documentation'
- description = 'Generates aggregated Javadoc API documentation.'
- title = "${rootProject.description} ${version} API"
- options.memberLevel = org.gradle.external.javadoc.JavadocMemberLevel.PROTECTED
- options.author = true
- options.header = rootProject.description
- options.overview = 'src/api/overview.html'
- source subprojects.collect { project ->
- project.sourceSets.main.allJava
- }
- destinationDir = new File(buildDir, "api")
- classpath = files(subprojects.collect { project ->
- project.sourceSets.main.compileClasspath
- })
+ group = 'Documentation'
+ description = 'Generates aggregated Javadoc API documentation.'
+ title = "${rootProject.description} ${version} API"
+ options.memberLevel = org.gradle.external.javadoc.JavadocMemberLevel.PROTECTED
+ options.author = true
+ options.header = rootProject.description
+ options.overview = 'src/api/overview.html'
+ source subprojects.collect { project ->
+ project.sourceSets.main.allJava
+ }
+ destinationDir = new File(buildDir, "api")
+ classpath = files(subprojects.collect { project ->
+ project.sourceSets.main.compileClasspath
+ })
}
task schemaZip(type: Zip) {
- group = 'Distribution'
- classifier = 'schema'
- description = "Builds -${classifier} archive containing all " +
- "XSDs for deployment at static.springframework.org/schema."
-
- subprojects.each { subproject ->
- def Properties schemas = new Properties();
- def shortName = subproject.name.replaceFirst("${rootProject.name}-", '')
- if (subproject.name.endsWith("-core")) {
- shortName = ''
- }
-
- subproject.sourceSets.main.resources.find {
- it.path.endsWith('META-INF/spring.schemas')
- }?.withInputStream { schemas.load(it) }
-
- for (def key : schemas.keySet()) {
- File xsdFile = subproject.sourceSets.main.resources.find {
- it.path.endsWith(schemas.get(key))
- }
- assert xsdFile != null
- into ("integration/${shortName}") {
- from xsdFile.path
- }
- }
- }
+ group = 'Distribution'
+ classifier = 'schema'
+ description = "Builds -${classifier} archive containing all " +
+ "XSDs for deployment at static.springframework.org/schema."
+
+ subprojects.each { subproject ->
+ def Properties schemas = new Properties();
+ def shortName = subproject.name.replaceFirst("${rootProject.name}-", '')
+ if (subproject.name.endsWith("-core")) {
+ shortName = ''
+ }
+
+ subproject.sourceSets.main.resources.find {
+ it.path.endsWith('META-INF/spring.schemas')
+ }?.withInputStream { schemas.load(it) }
+
+ for (def key : schemas.keySet()) {
+ File xsdFile = subproject.sourceSets.main.resources.find {
+ it.path.endsWith(schemas.get(key))
+ }
+ assert xsdFile != null
+ into ("integration/${shortName}") {
+ from xsdFile.path
+ }
+ }
+ }
}
task docsZip(type: Zip) {
- group = 'Distribution'
- classifier = 'docs'
- description = "Builds -${classifier} archive containing api and reference " +
- "for deployment at static.springframework.org/spring-integration/docs."
-
- from('src/dist') {
- include 'changelog.txt'
- }
-
- from (api) {
- into 'api'
- }
-
- from (reference) {
- into 'reference'
- }
+ group = 'Distribution'
+ classifier = 'docs'
+ description = "Builds -${classifier} archive containing api and reference " +
+ "for deployment at static.springframework.org/spring-integration/docs."
+
+ from('src/dist') {
+ include 'changelog.txt'
+ }
+
+ from (api) {
+ into 'api'
+ }
+
<