Groovy 渐变扩展任务/基于任务创建任务
Groovy新手,gradle。我想扩展以下任务(java插件的一部分): 扩展任务将具有Groovy 渐变扩展任务/基于任务创建任务,groovy,gradle,build.gradle,Groovy,Gradle,Build.gradle,Groovy新手,gradle。我想扩展以下任务(java插件的一部分): 扩展任务将具有 archiveName = 'PJ-latest.jar' destinationDir = project.getRootDir() 在典型的Java中,我会调用super,但我不确定如何在gradle中实现它。我最好的尝试是扩展Jar类,添加与Jar相同的参数以及依赖项: task assembleCompiler(type: Jar){ dependsOn compileJava, pro
archiveName = 'PJ-latest.jar'
destinationDir = project.getRootDir()
在典型的Java中,我会调用super
,但我不确定如何在gradle中实现它。我最好的尝试是扩展Jar
类,添加与Jar
相同的参数以及依赖项:
task assembleCompiler(type: Jar){
dependsOn compileJava, processResources, classes
archiveName = 'PJ-latest.jar'
destinationDir = project.getRootDir()
from { configurations.runtime.collect { zipTree(it) } }
manifest.attributes( 'Implementation-Title': archivesBaseName,
'Implementation-Version': version,
'Main-Class': mainClassName,
'Built-By': POM_DEVELOPER_NAME
)
}
您必须单独配置第二个任务,就像您已经做的那样。如果您想共享此代码,请将其转换为插件。这不清楚;为什么你不能直接把这些东西放到
jar
闭包中呢?@OliverCharlesworth我想要一个包含两个不同变量的第二个任务
task assembleCompiler(type: Jar){
dependsOn compileJava, processResources, classes
archiveName = 'PJ-latest.jar'
destinationDir = project.getRootDir()
from { configurations.runtime.collect { zipTree(it) } }
manifest.attributes( 'Implementation-Title': archivesBaseName,
'Implementation-Version': version,
'Main-Class': mainClassName,
'Built-By': POM_DEVELOPER_NAME
)
}