2017-05-30 87 views
0

是否有可能在Grails 3中创建一个自定义插件依赖于另一个自定义插件?这里是我的项目结构:Grails 3.2.9自定义插件依赖关系

  • grails3家庭
    • 对myApp
    • customPlugin1
      • 的build.gradle
      • settings.gradle
    • customPlugin2 ...

我想使customPlugin1依赖于customPlugin2。我读过的所有内容都表示,在Grails 3中的应用程序和插件之间建立多项目可能会有这种可能性。我可以在myApp中声明两个插件作为依赖关系,而不存在任何问题。不过,我还没有成功实现这两个插件之间的工作。

我加入以下行customPlugin1> settings.gradle

include "customPlugin2" 

并以customPlugin1>的build.gradle

grails { 
    plugins { 
     compile project(':customPlugin2') 
    } 
} 

然而,当我尝试建立customPlugin1,我得到以下错误:

失败:生成失败,出现异常。

  • 出错了: 配置根项目'customPlugin1'出现问题。

    Could not resolve all dependencies for configuration ':runtime'. Project : declares a dependency from configuration 'compile' to configuration 'default' which is not declared in the descriptor for project :customPlugin2.

是任何人都知道,如果我想要做的是可能的,如果是的话,我可能会丢失?

更新: 如果我改变配置

include "../customPlugin2" 

grails { 
    plugins { 
     compile project(':../customPlugin2') 
    } 
} 

插件成功建立,但我不再能够从customPlugin2导入域类到customPlugin1域类

回答

0

你应该做的包括在根settings.gradle

include 'myApp', 'customPlugin1', 'customPlugin2'

然后,在插件1:

grails { 
    plugins { 
     compile project(':customPlugin2') 
    } 
} 

注意,这只是定义的依赖关系。如果您需要插件2在插件1之前或之后加载,则需要在插件描述符中定义该插件。