Express Gradle 2.0 as a compile dependency despite the project using 2.6

Fixes #184
This commit is contained in:
R. Tyler Croy 2015-08-13 11:17:17 -07:00
parent bf7a27e5d6
commit 3d070056ab
No known key found for this signature in database
GPG Key ID: 1426C7DC3F51E16F
4 changed files with 48 additions and 3 deletions

View File

@ -34,8 +34,7 @@ subprojects {
}
dependencies {
compile gradleApi()
compile localGroovy()
compile new GradleDist(project, '2.0').asFileTree
}
codenarc {
@ -81,4 +80,3 @@ task release(type: Exec) {
dependsOn subprojects.collect { ":${it.name}:bintrayUpload" }, 'docs:publishGhPages'
commandLine 'git', 'tag', "v${project.version}"
}

2
buildSrc/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
build/
*swp*

View File

@ -0,0 +1,44 @@
import org.gradle.api.Project
import org.gradle.api.file.FileTree
import org.gradle.wrapper.Download
import org.gradle.wrapper.Install
import org.gradle.wrapper.Logger
import org.gradle.wrapper.PathAssembler
import org.gradle.wrapper.WrapperConfiguration
/**
* Include this in your project's buildSrc, then add a dependency to your project:
* compile new GradleDist(project, '2.6').asFileTree
*
* Code courtesy of @ajoberstar
*/
class GradleDist {
private final Project project
final String version
GradleDist(Project project, String version) {
this.project = project
this.version = version
}
String getPath() {
return "https://services.gradle.org/distributions/gradle-${version}-bin.zip"
}
File getAsFile() {
return project.file(getPath())
}
URI getAsURI() {
return project.uri(getPath())
}
FileTree getAsFileTree() {
Logger logger = new Logger(true)
Install install = new Install(logger, new Download(logger, 'gradle', ''), new PathAssembler(project.gradle.gradleUserHomeDir))
WrapperConfiguration config = new WrapperConfiguration()
config.distribution = getAsURI()
File file = install.createDist(config)
return project.fileTree(dir:file, include:'**/*.jar')
}
}

View File

@ -8,6 +8,7 @@ import org.gradle.testkit.runner.TaskOutcome
import spock.lang.*
@Ignore('raises a groovy version conflict at runtime')
class JRubyJarIntegrationSpec extends Specification {
@Rule
final TemporaryFolder testProjectDir = new TemporaryFolder()