应用gradle自定义jar插件

时间:2013-05-09 18:23:54

标签: plugins groovy gradle

我为gradle创建了一个简单的基于groovy的插件。

在我的gradle.build文件中,我有以下内容:

apply plugin: 'groovy'

dependencies {
    compile gradleApi()
    compile localGroovy()
}

一切都很好,我得到一个构建目录,并在lib文件夹中生成.jar,我想这是独立的插件。

现在我想知道如何将这个新插件注册到我的gradle安装中,所以我可以这样做 apply plugin:'myPlugin'我做了以下的事情:

  • 将插件下载到安装中的插件文件夹
  • 创建myplugin.properties文件并将其包含在META-INF文件夹
  • 将相同的属性文件放在src目录中的META-INF中(绝望行为)

在我尝试应用插件的每一步之后,我都会收到错误:

  • 未找到ID“myplugin”的插件

我怎样才能做到这一点?

你能列出一个让我的插件工作的步骤列表吗? (我是gradle + groovy的新手)

感谢您的帮助

2 个答案:

答案 0 :(得分:10)

用户指南的chapter 58包含您需要的所有信息。总结:

  • 将您的myPlugin.properties放在项目结构中,位于src / main / resources / META-INF中 / gradle这个-插件/
  • 像往常一样建立你的罐子
  • 在您希望使用此插件的脚本中,添加buildscript闭包,例如:

    buildscript {
        repositories {
            flatDir dirs: "build/libs"
        }
        dependencies {
            classpath "your.group:your-plugin:1.0.0"
        }
    }
    

或者您希望的repositoriesdependencies的任何设置,但您需要使用我在此处完成的classpath配置。我不认为你可以(或者应该!)将jar添加到Gradle的插件目录中,就像你一样。

答案 1 :(得分:2)

查看完整Gradle分布中的samples/customPluginsamples/customDistribution个样本(或GitHub)。他们应该拥有您需要的所有信息。