【问题标题】:Grails 2.3.x lib directory with customized plugins带有自定义插件的 Grails 2.3.x lib 目录
【发布时间】:2014-09-28 20:00:57
【问题描述】:

我不知道怎么问这个问题,但我还是会试试的。我发现不同的人有某种类似的问题。但没有完全相同的问题。

我有一个 grails 2.3.x 应用程序,它使用自定义版本的插件。当我们能够将插件的自定义版本包含到 /lib 文件夹中时,我已经习惯了旧版本的 Grails(Maven 依赖解析)。我正在做同样的事情,但我无法解决任何问题。 :(

有没有办法告诉 grails,lib 目录(或其他一些,进入项目文件夹)上面有我们以前使用的插件 zip 文件?

更新

只是为了澄清。我希望将打包的插件放到项目目录中,而不是源代码

更新 2

尝试将打包的插件添加到项目根目录内的plugins 文件夹中,但没有任何运气。而BuildConfig.groovy 是否声明了依赖项。

【问题讨论】:

    标签: grails


    【解决方案1】:

    不确定我是否正确理解了您的问题。您似乎想在 grails-app 中使用自定义版本的插件。您可以通过在应用程序的根目录中创建一个“custom-plugins”文件夹并将插件的自定义版本放置在此文件夹中来实现。然后在 BuildConfig 中我们可以在文件开头指定插件位置,如下所示: 假设我有

    myGrailsApp/custom-plugins/custom-plugin-1

    grails.plugin.location."custom-plugin-1"="custom-plugins/custom-plugin-1"
    

    就是这样。

    【讨论】:

    • 我可以使用插件的打包版本执行此操作吗?作为“zip”文件?我不想把源代码留在那里(它在其他地方有版本)
    • 您可能需要将 zip 文件放在项目的 lib 目录中,然后使用 BuildConfig 安装它:例如,如果插件是 your-plugin-1.0,那么在 BuildConfig 中您可以使用类似这个:runtime :your-plugin:1.0
    • 很抱歉,但这也不起作用。无论我做什么,Grails 都找不到插件,它以Error Resolve error obtaining dependencies: Could not find artifact 结尾
    【解决方案2】:

    如果您将插件打包为 .zip 文件并将其放在应用程序根目录的 plugins 目录中,它将从那里加载。您可能还需要从 BuildConfig.groovy 中删除插件依赖声明,然后才能使用。

    【讨论】:

    • 奇怪,它没有任何好处。我尝试删除 BuildConfig.groovy,然后 grails 删除了插件。如果我包含它,grails 将无法找到它。我错过了什么吗?
    猜你喜欢
    • 1970-01-01
    • 2012-03-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-13
    • 1970-01-01
    • 2016-08-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多