grails - 如何在Grails中覆盖插件配置?

标签 grails plugins configuration

我正在使用出色的类图插件https://github.com/trygvea/grails-class-diagram,并希望覆盖我的应用Config.groovy文件中设置的配置值classSelection:https://github.com/trygvea/grails-class-diagram/blob/master/grails-app/conf/ClassDiagramConfig.groovy

以下内容似乎都不起作用:

grails.plugins.class-diagram.classDiagram.config.defaults.classSelection = "com.mypackage.*"
grails.plugins.class-diagram.config.preferences.defaults.classSelection = "com.mypackage.*"
grails.plugins.class-diagram.classDiagram.config.preferences.defaults.classSelection = "com.mypackage.*"

我如何访问正确的 namespace 以覆盖值?

谢谢!

最佳答案

Config属性的名称是任意的,它们不一定必须遵循任何特定的模式或约定(如程序包名称)。

如果只有一个要覆盖的属性,则可以使用“flattened”语法:

classDiagram.preferences.defaults.classSelection = 'com.mypackage.*'

如果要将多个属性分组在一起,也可以使用闭包语法声明Config属性(如示例Config文件中所示):
classDiagram {
    preferences {
        defaults {
            classSelection = "com.mypackage.*"
            showAssociationNames = false
            showMethodReturnType = true
            showMethodSignature = false            
        }
    }
}

请注意,Grails插件系统不会自动将插件的*Config.groovy文件加载到应用程序的Config中。插件开发人员可以设置插件以将默认的*Config.groovy文件合并到应用程序的Config中,在这种情况下,通常应用程序的Config.groovy中的属性将覆盖插件提供的Config属性。

关于grails - 如何在Grails中覆盖插件配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12644714/

相关文章:

taglib 中的 grails 访问 Controller

c++ - dlmopen 和 C++ 库

linux - 如何在 Bluez 4 中禁用拨号网络服务?

php - 关于 `$HTTP_RAW_POST_DATA` 被弃用的警告

Facebook 评论插件 : How to sort the comments, 最新第一?

java - hibernate 配置文件

hibernate - 从Grails/GORM投影返回完整域对象

maven - Log4j 冲突 - 提供的容器和项目级别

email - Grails 注入(inject)的邮件服务 bean 在 Controller 内为空

ios - ios的唯一设备标识