我正在尝试使用Gradle包装第三方Ant构建。
到目前为止一切正常,除了在其中一个Ant目标中,javac与includeantruntime =" true"并且当通过Gradle运行时,它无法编译,因为它在类路径中没有Ant运行时。
请注意,javac调用includeantruntime =" false"工作得很好。
是否有人知道我需要添加到Gradle构建文件中以将Ant运行时作为依赖项包含在内?
这是我当前的build.gradle:
repositories {
mavenCentral()
}
configurations {
junitAnt
}
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'org.apache.ant:ant:1.9.5'
}
}
dependencies {
junitAnt 'junit:junit:4.8.2'
junitAnt('org.apache.ant:ant-junit:1.9.5') {
transitive = false
}
junitAnt('org.apache.ant:ant-junit4:1.9.5') {
transitive = false
}
}
ant.taskdef(name: 'junit', classname: 'org.apache.tools.ant.taskdefs.optional.junit.JUnitTask',
classpath: configurations.junitAnt.asPath)
ant.importBuild ('build.xml')
task props << {
ant.echoproperties(destfile:'dump-properties.txt', format:'text')
}
这是违规的javac用法(请注意,JUnitLogFixFormatter确实需要在类路径中编译Ant运行时):
<javac srcdir="${lib.dir}" destdir="${build-test.dir}" debug="true"
includeantruntime="true" encoding="utf-8" target="1.6" source="1.6">
<compilerarg value="-Xlint:unchecked"/>
<classpath location="${junit.jar}"/>
<include name="JUnitLogFixFormatter.java"/>
</javac>