如何覆盖Grails中的插件配置?

如何覆盖Grails中的插件配置?,grails,plugins,configuration,Grails,Plugins,Configuration,我正在使用优秀的类图插件,并希望覆盖这里设置的配置值classSelection:在我的apps config.groovy文件中 以下各项似乎都不起作用: grails.plugins.class-diagram.classDiagram.config.defaults.classSelection = "com.mypackage.*" grails.plugins.class-diagram.config.preferences.defaults.classSelection = "com

我正在使用优秀的类图插件,并希望覆盖这里设置的配置值classSelection:在我的apps config.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.*"
如何访问正确的命名空间以覆盖该值


谢谢

Config.groovy
中设置的属性将覆盖插件的Config.groovy属性(如果它们具有相同的名称)。您正在为属性添加一个包,但这不是必需的。使用

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

配置属性的名称是任意的,它们不必遵循任何特定的模式或约定,如包名

如果只有一个属性要重写,则可以使用“展平”语法:

如果要将多个属性组合在一起,还可以使用闭包语法(如示例配置文件中所示)声明配置属性:

classDiagram {
    preferences {
        defaults {
            classSelection = "com.mypackage.*"
            showAssociationNames = false
            showMethodReturnType = true
            showMethodSignature = false            
        }
    }
}

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

我更新了这个答案,以澄清Grails插件系统如何从插件加载Config.groovy文件的一些事实。
classDiagram {
    preferences {
        defaults {
            classSelection = "com.mypackage.*"
            showAssociationNames = false
            showMethodReturnType = true
            showMethodSignature = false            
        }
    }
}