我有一个自定义类型的存档,我想用gradle构建,结构等于标准的java项目,所以我想使用它,但后来我有其他资源转到自定义位置,另外我喜欢将存档打包为zip而不是jar,我正在考虑创建Java gradle插件的子类,但我不确定这是否可行.创建这个继承Java功能的新插件的适当方法是什么?
如果你想创建一个具有约定的自定义java插件,它与标准的gradle插件不同,我建议从java-base插件开始.java-base插件确实提供了sourcesets的功能,但还没有任何一个.
您应该在自定义插件中应用它,而不是继承插件:
class YourCustomJavaPlugin implements Plugin<Project> {
void apply(Project project){
// 1st apply the 'java-base' plugin
project.apply(plugin:'java-base')
// 2nd apply your own conventions on top
project.sourceSets.create("customSourceSet")
Zip myZip = project.tasks.create("zip", Zip)
...
}
}
Run Code Online (Sandbox Code Playgroud)
干杯,
勒内