我正在使用优秀的类图插件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.*"
如何访问正确的命名空间以覆盖值?
谢谢!
答案 0 :(得分:3)
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属性。
答案 1 :(得分:0)
在Config.groovy
中设置的属性将覆盖插件的Config.groovy属性(如果它们具有相同的名称)。您正在为属性添加包,但这不是必需的。使用
classDiagram.preferences.defaults.classSelection = "com.mypackage.*"