【问题标题】:Adding in-place plugin to grails 3 project将就地插件添加到 grails 3 项目
【发布时间】:2016-05-16 10:20:18
【问题描述】:

在 grails 2.x 中,我们可以通过在 BuildConfig.groovy 中添加以下内容来添加就地插件

grails.plugin.location."my-plugin" = "../my-plugin"

我的问题是,我们是否可以在 grails3.0 中同样就地添加我们的本地插件,或者在 grails 中有其他方法来做到这一点。

实际目的是在将插件推送到 bintray 之前测试插件是否正常工作。

【问题讨论】:

  • 你试过像maven本地仓库一样打包吗?

标签: grails grails-plugin grails-3.1


【解决方案1】:

是的,有。 Grails 3 基于 Gradle,因此多项目 gradle 构建可以解决您的问题。

基本上,您将依赖项添加为: compile project(':../my-custom-plugin') 并且必须修改settings.gradle 以包含插件: include '../my-custom-plugin'

http://grails.github.io/grails-doc/latest/guide/plugins.html 中查看Plugins and Multi-Project Builds 上的Grails 文档

另一种方法是使用gradle publishToMavenLocal 命令在本地maven 存储库中安装插件并从那里解析,然后再发布到Bintray 或其他依赖存储库。

此外,从 Grails 3.1.1 开始,“内联”插件现在支持重新加载。检查https://github.com/grails/grails-core/releases/tag/v3.1.1http://grails.io/post/138665751278/grails-3-gradle-multi-project-builds

使用grails { plugins { 语法完成。复制自文档:

grails {
    plugins {
        compile ":hibernate"
        compile project(':myplugin')
    }
}

【讨论】:

  • grails { plugins { 在 build.gradle 文件中的位置?你能举个例子吗。一个 github 或 gist 链接就可以了。
  • 我们倾向于将它放在dependencies {} 块之前,但它可以在任何地方工作,但在应用所需的插件之后(apply plugin: 行)
  • 查看此链接以了解如何在 grails 3 中使用 inlace 插件,并根据某些环境变量有条件地进行操作 nimavat.me/code-snippets/how-to-use-grails3-inplace-plugins
【解决方案2】:

这个多项目的事情有点太大了,无法在简短的帖子中回答。我最近才开始使用它,但是,幸运的是,我现在掌握了它。我的网站上有一个教程,其中包含一个使用该插件处理域类和服务以及所有其他子项目(仅一个,本示例中的 Web 应用程序)的插件。代码也可以下载。这是链接:http://www.databaseapplications.com.au/grails-multi-app.jsp 别搞错了,有几件事需要注意。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-28
    • 1970-01-01
    • 1970-01-01
    • 2015-11-27
    • 1970-01-01
    • 2014-08-23
    • 2023-03-18
    • 2013-07-29
    相关资源
    最近更新 更多