次のプロジェクト構造があります。
MyProject
--src
--test
--acceptance
--java
--resources
--unit
および次の build.gradle
apply plugin: 'java'
apply plugin: 'idea'
version = '0.1'
repositories {
mavenCentral()
}
sourceSets {
main {
java {
srcDir 'src'
}
}
unit {
java {
srcDir 'test/unit'
}
compileClasspath += sourceSets.main.runtimeClasspath
}
acceptance {
java {
srcDir 'test/acceptance/java'
}
resources {
srcDir 'test/acceptance/resources'
}
compileClasspath += sourceSets.main.runtimeClasspath
}
}
dependencies {
compile fileTree(dir: 'lib', include: '*.jar')
unitCompile group: 'junit', name: 'junit', version: '4.11'
acceptanceCompile group: 'junit', name: 'junit', version: '4.11'
acceptanceCompile group: 'info.cukes', name: 'cucumber-junit', version: '1.1.3'
acceptanceCompile group: 'info.cukes', name: 'cucumber-java', version: '1.1.3'
}
task unitTest(type: Test) {
description = "Runs Unit Tests"
classpath += sourceSets.unit.runtimeClasspath
testClassesDir = sourceSets.unit.output.classesDir
}
task acceptanceTest(type: Test) {
description = "Runs Acceptance Tests"
classpath += sourceSets.acceptance.runtimeClasspath
testClassesDir = sourceSets.acceptance.output.classesDir
}
しかし、「gradle acceptTest」を実行すると、依存関係がクラスパスに見つからないように見えるため、コンパイルの問題が発生します。