【问题标题】:How do I integrate a Grails 2 plugin in a Grails 3 project?如何在 Grails 3 项目中集成 Grails 2 插件?
【发布时间】:2017-07-17 15:47:04
【问题描述】:

具体问题以粗体显示。

我遇到了一个问题,我试图将 email-confirmation 插件集成到 Grails 3 项目中。我的build.gradle 构建良好,但是,当我尝试导入插件定义的类时,我收到Cannot resolve symbol <class name> 错误。

这个插件在大约 5 年内没有被触及,并且有很多拉取请求表明它早在 Grails 2.4 就被破坏了(哎呀,我知道)。

虽然如果这是一个愚蠢的差事,我不会感到惊讶——我仍然希望 Grails 3 至少提供足够的向后兼容性,使我能够编译和引用以前版本的插件。我看过upgarding from grails2.x,它指的是插件升级,但是,它似乎没有建议旧版本的 Grails 的插件不起作用。

如果我将以下内容添加到我的build.gradle

task showMeCache << {
    configurations.compile.each { println it }
}

email-configuration 插件是唯一可以“编译”为 .zip 的插件。我想这与我无法引用它的类有关。 Grails 2.X 中的所有插件都是这样编译/分发的吗?

我现在认为使用这个插件的唯一方法是重构插件并创建我自己的插件分发,如果我想让它工作(因为this SO 问题表明不可能配置一个本地插件。)。

这是使 Grails 2 插件适用于 Grails 3 应用程序的唯一方法吗?

【问题讨论】:

  • 你不能在 grails 3 中使用 grails2 插件
  • 好吧,我猜就是这样耸耸肩

标签: grails plugins build.gradle


【解决方案1】:

问题 1:是的。

问题 2:也是。

基本上,没有合理的方式(甚至可能不是不合理的方式;我不太确定)让 grails 2 插件在 grails 3 应用程序中工作。如果您只想升级它以供自己使用,则不必公开发布您的插件分发(但请这样做,如果您让它工作到对其他人也有帮助的地步!)但您会必须遵循插件升级步骤才能在您的应用程序中安装和使用此插件。幸运的是,如果您已经熟悉 grails 3,那么这对您来说很可能不会是一个特别困难的过程!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-22
    • 1970-01-01
    • 1970-01-01
    • 2016-02-26
    • 2013-06-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多