From 3e8120663704620f65c20345bd0829624e127852 Mon Sep 17 00:00:00 2001 From: "Chris.Slinkman" Date: Sun, 25 Jan 2015 22:21:00 -0600 Subject: [PATCH] Test config for java project --- .../groovy/com/jimdo/gradle/AptPlugin.groovy | 24 +++++++++++++++++++ .../jimdo/gradle/AptPluginExtension.groovy | 1 + 2 files changed, 25 insertions(+) diff --git a/src/main/groovy/com/jimdo/gradle/AptPlugin.groovy b/src/main/groovy/com/jimdo/gradle/AptPlugin.groovy index b079de4..f46312d 100644 --- a/src/main/groovy/com/jimdo/gradle/AptPlugin.groovy +++ b/src/main/groovy/com/jimdo/gradle/AptPlugin.groovy @@ -24,10 +24,14 @@ class AptPlugin implements Plugin { def applyToJavaProject(project) { File aptOutputDir = getAptOutputDir(project) + File testAptOutputDir = getAptTestOutputDir(project) project.task('addAptCompilerArgs') << { project.compileJava.options.compilerArgs.addAll '-processorpath', project.configurations.apt.asPath, '-s', aptOutputDir.path + project.compileTestJava.options.compilerArgs.addAll '-processorpath', + project.configurations.apt.asPath, '-s', testAptOutputDir.path + project.compileJava.source = project.compileJava.source.filter { !it.path.startsWith(aptOutputDir.path) } @@ -38,8 +42,20 @@ class AptPlugin implements Plugin { aptOutputDir.mkdirs() } + + project.compileTestJava.source = project.compileTestJava.source.filter { + !it.path.startsWith(testAptOutputDir.path) + } + + project.compileTestJava.doFirst { + logger.info "Generating sources using the annotation processing tool:" + logger.info " Output directory: ${testAptOutputDir}" + + testAptOutputDir.mkdirs() + } } project.tasks.getByName('compileJava').dependsOn 'addAptCompilerArgs' + project.tasks.getByName('compileTestJava').dependsOn 'addAptCompilerArgs' } def applyToAndroidProject(project) { @@ -106,4 +122,12 @@ class AptPlugin implements Plugin { } project.file aptOutputDirName } + + def getAptTestOutputDir(project){ + def aptTestOutputDirName = project.apt.testOutputDirName + if (!aptTestOutputDirName){ + aptTestOutputDirName = 'build/source/apt-test' + } + project.file aptTestOutputDirName + } } diff --git a/src/main/groovy/com/jimdo/gradle/AptPluginExtension.groovy b/src/main/groovy/com/jimdo/gradle/AptPluginExtension.groovy index b8c0420..4288c75 100644 --- a/src/main/groovy/com/jimdo/gradle/AptPluginExtension.groovy +++ b/src/main/groovy/com/jimdo/gradle/AptPluginExtension.groovy @@ -2,4 +2,5 @@ package com.jimdo.gradle class AptPluginExtension { String outputDirName + String testOutputDirName }