jem/build.gradle

118 lines
3.0 KiB
Groovy

buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:[1.3.1,1.4)'
}
}
apply plugin: 'java'
apply plugin: 'groovy'
apply plugin: 'maven'
apply plugin: 'com.jfrog.bintray'
if (System.env['Jenkins.Repository']) {
apply from: 'gradle/integration.gradle'
}
version = '0.3.1'
group = 'com.github.jruby-gradle'
description = 'A library for managing Ruby gems'
defaultTasks 'check', 'assemble'
repositories {
jcenter()
}
dependencies {
compile 'org.slf4j:slf4j-api:[1.7.12,1.8)'
/* using the simple logger at runtime, no need for it at compile time though */
runtime 'org.slf4j:slf4j-simple:[1.7.12,1.8)'
/* Used for processing yaml files inside of gems */
compile 'com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:[2.5.4,2.6)'
compile 'com.fasterxml.jackson.core:jackson-annotations:[2.5.4,2.6)'
compile 'com.fasterxml.jackson.core:jackson-databind:[2.5.4,2.6)'
/* shrinkwrap is used for digging into archives */
compile "org.jboss.shrinkwrap:shrinkwrap-bom:[1.2.2,1.3)"
compile "org.jboss.shrinkwrap:shrinkwrap-depchain:[1.2.2,1.3)"
/* Used for FileUtils and deleting integration test dirs */
testCompile 'org.apache.commons:commons-io:1.3.2'
testCompile "org.spockframework:spock-core:1.0-groovy-2.4"
testCompile 'cglib:cglib-nodep:3.1'
}
test {
testLogging {
showStandardStreams = true
exceptionFormat "full"
}
}
plugins.withType(JavaPlugin) {
sourceCompatibility = 1.7
targetCompatibility = 1.7
project.tasks.withType(JavaCompile) { task ->
task.sourceCompatibility = project.sourceCompatibility
task.targetCompatibility = project.targetCompatibility
}
project.tasks.withType(GroovyCompile) { task ->
task.sourceCompatibility = project.sourceCompatibility
task.targetCompatibility = project.targetCompatibility
}
}
task sourcesJar(type: Jar, dependsOn: classes) {
classifier = 'sources'
from sourceSets.main.allSource
}
task javadocJar(type: Jar) {
dependsOn javadoc
classifier = 'javadoc'
from javadoc.destinationDir
}
artifacts {
archives sourcesJar
archives javadocJar
}
bintray {
user = project.bintrayUser
key = project.bintrayKey
publish = true
configurations = ['archives']
/*
* Only only publish when we're tagging a release and if we've executed on
* the JDK7 build. This is to prevent multiple attempts by the build matrix
* to publish the artifacts
*/
dryRun = !((System.env.TRAVIS_TAG as boolean) && (System.env.TRAVIS_JDK_VERSION == 'openjdk7'))
pkg {
userOrg = 'jruby-gradle'
repo = 'libraries'
name = 'jem'
labels = ['jruby','java']
version {
name = project.version
vcsTag = "v${project.version}"
desc = project.description
}
}
}
bintrayUpload.dependsOn assemble
assemble.dependsOn check
assemble.dependsOn javadocJar
assemble.dependsOn sourcesJar