1

我正在使用优秀的类图插件https://github.com/trygvea/grails-class-diagram,并希望覆盖此处设置的配置值 classSelection:https ://github.com/trygvea/grails -class-diagram/blob/master/grails-app/conf/ClassDiagramConfig.groovy在我的应用程序 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.*"

我如何访问正确的命名空间以覆盖该值?

谢谢!

4

2 回答 2

3

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

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

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

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

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

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

于 2012-09-29T13:37:19.480 回答
0

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

classDiagram.preferences.defaults.classSelection = "com.mypackage.*"
于 2012-09-28T17:35:56.510 回答