如何在Custom插件中编写dependsOn [英] How to write dependsOn in Custom plugin
问题描述
任务makeJar(类型:复制){
delete ('dist /')
from('build / intermediates / bundles / release')
into('dist /')
include('classes.jar')
def jarName = new VersionName()。getNameWithVersion()+'.jar'
rename('classes.jar',jarName)
}
makeJar.dependsOn('clearTask',build)
现在,我想从我的build.gradle中删除它并创建一个像这样的自定义插件:MakeJarTask.groovy (这是在eclipse项目中) p> 但是这并没有给出正确的输出。 I have a task in my build.gradle : Now, I want to remove this from my build.gradle and create a custom plugin like this : MakeJarTask.groovy (this is in eclipse project) Calling this Task in callGroovy.class (that implements Plugin) But this doesn't give the correct output .
The error is in last part, I think this is not the correct way to use dependsOn but I am not able to get how to use this. Any help will be highly appreciated.
这篇关于如何在Custom插件中编写dependsOn的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
$ b $ pre $ class MakeJarPluginTask extends Copy {
@TaskAction
def makeJar() {
logger.lifecycle(创建一个jar *********************)
delete('dist /')
(from'build / intermediates / bundles / release')
into('dist /')
include('classes.jar')
def jarName = new VersionName()。getNameWithVersion )+'.jar'
重命名('classes.jar',jar在callGroovy.class中调用此任务(实现Plugin)
$ b
project.tasks.create(makeJarPlugin1,MakeJarPluginTask.class){
dependsOn(clearDist,build )
}
错误在最后一部分,我认为这不是使用dependsOn的正确方法,但我无法得到如何使用它。任何帮助将不胜感激。
Task task = project.tasks.create makeJarPlugin1,MakeJarPluginTask.class);
task.dependsOn(clearDist,build)
task makeJar(type: Copy) {
delete('dist/')
from('build/intermediates/bundles/release')
into('dist/')
include('classes.jar')
def jarName = new VersionName().getNameWithVersion() + '.jar'
rename('classes.jar', jarName)
}
makeJar.dependsOn('clearTask', build)
class MakeJarPluginTask extends Copy{
@TaskAction
def makeJar(){
logger.lifecycle("creating a jar *********************")
delete('dist/')
from('build/intermediates/bundles/release')
into('dist/')
include('classes.jar')
def jarName = new VersionName().getNameWithVersion() + '.jar'
rename('classes.jar', jarName)
}
project.tasks.create("makeJarPlugin1", MakeJarPluginTask.class){
dependsOn("clearDist", "build")
}
Task task = project.tasks.create("makeJarPlugin1", MakeJarPluginTask.class);
task.dependsOn("clearDist", "build")