链接Grails插件?

时间:2014-04-02 02:35:13

标签: grails grails-plugin grails-2.3

我正在尝试构建一个Grails插件,它将作为一套其他Grails应用程序的“主插件”。

我想知道是否有可能以某种方式将插件传递到一起?假设插件A 依赖于插件B Grails App GA1 使用(安装)插件A 。当开发人员将插件A (“主人”)安装到 Grails App GA1 时,他们最终会安装插件A 以及插件B ,过渡。

这可能吗?如果是这样,怎么样?如果没有,为什么,有没有办法破解这个或者是否有更好的方式来传递安装插件?

1 个答案:

答案 0 :(得分:4)

  

假设插件A依赖于插件B

这意味着您的插件A BuildConfig将具有:

plugins {
  compile ':pluginB:...'
}

当您在应用程序中安装插件A时,Grails也会自动下载并安装插件B.

依赖块也是如此。所以,您可以拥有一个依赖于插件列表的插件,应用程序将安装所有这些插件。这是在Grails中使用插件的默认行为。

相反,如果你想来获得插件C (如果插件A使用了任何内容),那么插件A 用于Grails应用程序,然后您可以选择性地阻止将插件C拉入应用程序的传递性。在插件A的 BuildConfig 内,您可以指定:

plugins {
    compile(':pluginC:...') {
        //makes sure Plugin C is not available 
        //when Plugin A is used in the app
        export = false 
    }
}