gradle:如何在方法中运行任务

gradle:如何在方法中运行任务,gradle,Gradle,我想在一个方法或函数中运行一个任务,如何编写代码,你能给我一个演示吗? 谢谢 例如 这是一项任务 task releaseJar(type: Copy) { from('build/intermediates/bundles/release') into('build/output/jar') include('classes.jar') rename('calsses.jar', 'core' + '0.0.1' + '.jar') } 我想试一下 artif

我想在一个方法或函数中运行一个任务,如何编写代码,你能给我一个演示吗? 谢谢

例如

这是一项任务

task releaseJar(type: Copy) {
    from('build/intermediates/bundles/release')
    into('build/output/jar')
    include('classes.jar')
    rename('calsses.jar', 'core' + '0.0.1' + '.jar')
}
我想试一下

artifacts {
   ...same as  call releaseJar
    def myreleasejar = file 'build/output/jar/core0.0.1.jar'
    archives myreleasejar
    archives sourcesJar
}

永远不要显式调用任务。Gradle将根据依赖关系图确定需要运行哪些任务。因此,您应该声明任务依赖关系,Gradle将负责其余的工作。在这种情况下,您可以告诉Gradle哪些任务负责构建工件

artifacts {
    archives(file("${buildDir}/output/jar/core0.0.1.jar")) {
        builtBy releaseJar
    }
}

评估项目时出现问题“:core'>找不到参数的方法文件()[………这里是完整路径]我更新了答案。尝试更新的语法。它可能试图将配置闭包传递给
file()
方法。如果仍然出现错误,请链接到完整的stacktrace。我正在定义复制和重命名文件的方法,而不是任务。多谢各位`(∩_∩)′