Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Plugins 在Gradle中加载插件自己的configurations.someConfig_Plugins_Ant_Gradle_Classpath - Fatal编程技术网

Plugins 在Gradle中加载插件自己的configurations.someConfig

Plugins 在Gradle中加载插件自己的configurations.someConfig,plugins,ant,gradle,classpath,Plugins,Ant,Gradle,Classpath,我有一个gradle插件,可以调用一些ant任务 我想根据插件构建文件中的配置设置ant任务类路径 我的插件构建文件(不是我想使用插件构建的项目): 我还将ant任务包装在Gradle任务中,我想引用antTask1 class MyTask extends DefaultTask { void executeTask() { ant.taskdef(name: 'antTask', classpath: **<WHAT GOES HERE?>**, clas

我有一个gradle插件,可以调用一些ant任务

我想根据插件构建文件中的配置设置ant任务类路径

我的插件构建文件(不是我想使用插件构建的项目):

我还将ant任务包装在Gradle任务中,我想引用antTask1

class MyTask extends DefaultTask {
    void executeTask() {
        ant.taskdef(name: 'antTask', classpath: **<WHAT GOES HERE?>**, classname: 'something') {
        ....
        }
    }
}
类MyTask扩展了DefaultTask{
void executeTask(){
taskdef(名称:'antTask',类路径:***,类名称:'something'){
....
}
}
}
运行此命令时,我希望anttask的类路径包含build.gradle文件中的那些依赖项(但不包括其余的编译/运行时依赖项)


我尝试了project.buildscript.configurations,但它引用了其他内容。我知道如果我在项目(应用了插件)构建文件中定义了这些依赖项,我可以很容易地找到它们,但是在运行任务时有没有办法获取插件的上下文和配置?

你可以使用
project.configurations.antTask1.asPath
来实现这一点。自定义配置是为项目的类路径定义的,而不是为构建脚本的类路径定义的。这就是为什么您无法通过
project.buildscript
找到它。我建议阅读Gradle在线用户指南中的差异。

project.configurations.antTask1.asPath只有在我将其放入项目的build.Gradle中时才有效。是否可以访问插件的build.gradle配置?
class MyTask extends DefaultTask {
    void executeTask() {
        ant.taskdef(name: 'antTask', classpath: **<WHAT GOES HERE?>**, classname: 'something') {
        ....
        }
    }
}