将Gradle配置转换为Ant路径

时间:2017-04-04 09:40:23

标签: gradle ant

如何将Gradle配置转换为Ant路径?

build.gradle摘录

configurations {
    install
}
dependencies {
    install "com.oracle:ojdbc6:12.1.0.2"
    install project(':myproject')
    install ...
}

需要install配置(包括其传递依赖关系)作为ant任务的参数:

ant.updateDatabase(classpathref: 'installCpRef')

使用ant.path(id: 'installCpRef', location: configurations.install.asPath)不起作用,因为ant.path将该位置视为单个路径规范。只有在路径上只有一个元素时,这才有效。

一种解决方案是手动指定所有依赖项,例如

ant.path(id: 'install.cp') {
    fileset(dir: '<aPath>', includes: '<aJar>')
    fileset(dir: '<anotherPath>') {
            include (name: '**/*.jar')
    }
}

这意味着重新声明所有依赖项,包括传递依赖项,这是不可接受的。

如何自动将configuration.install转换为蚂蚁路径?

由于

1 个答案:

答案 0 :(得分:0)

请参阅ant docs中的path-like structures

  

location属性指定单个文件或目录相对   到项目的基本目录(或绝对文件名),而   path属性接受以冒号或分号分隔的列表   位置。

这应该有效:

ant.classpath(id: 'install.cp', path: configurations.install.asPath)
ant.updateDatabase(classpathref: 'install.cp')