gradle - 如何打包Gradle插件?

标签 gradle

我在弄清楚META-INF / gradle-plugins / plugin.properties必须匹配时遇到了麻烦。这里有两个问题。一个是属性文件的名称,一个是其中设置为implementation-class的值。因此,我可以这么简单地回答我的问题。

如果我有:

META-INF/gradle-plugins/com.my.plugin.properties 

文件名映射到源插件的哪一部分?这个名字的含义是什么?是来源和目的地?我的名字正确吗?

如果在文件中,我有:
implementation-class=build.WeirdoPlugin

此名称的来源和目的地是什么?

最佳答案

implementation-class应该指向实现Plugin<>的主插件类

例如,在jmeter-gradle-plugin/src/main/resources/META-INF/gradle-plugins/net.foragerr.FooPlugin.properties

implementation-class=net.foragerr.soanswers.FooPluginImpl

然后,我将实现一个类:
package net.foragerr.soanswers

class FooPluginImpl implements Plugin<Project>{
  ...
}

要使用该插件,请将其应用为(新的gradle格式):
plugins {
  id "net.foragerr.FooPlugin" version "xxx"
}

关于gradle - 如何打包Gradle插件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34665005/

相关文章:

java - 将 gradle 转换为 Maven

java - 为什么 Gradle 使用 Java 8 构建失败?

android - Android App未出现在模拟器上

android - Gradle找不到依赖

eclipse - 找不到LibGDX + Gradle + Maven对Tween Engine的引用

java - Gradle War 插件 - 重命名库

java - 错误 "could not fetch model of type ' BasicIdeaProject' 在 Windows 中使用 Gradle 分发?

java - Gradle + rhino执行脚本

Android - Gradle : error: package does not exist

compilation - 如何在 Gradle 中定义*仅*编译时类路径?