Внешний BuildConfig в Grails

Мы можем загрузить различные файлы конфигурации для Config.groovy, указав класс, который является сценарием конфигурации. Внешняя конфигурация:

grails.config.locations = [com.my.app.MyConfig]

Можно ли сделать что-то подобное для BuildConfig.groovy?

Я хочу поместить конфигурацию CodeNarc в другой файл конфигурации. Поскольку он использует синтаксис Groovy ConfigSlurper, я пытаюсь объединить объекты конфигурации, но это не работает.

def config = new ConfigSlurper().parse(..)    
this.merge(config)

Какой-то другой трюк?


person Arturo Herrero    schedule 01.02.2013    source источник
comment
Нашел этот суть, возможно, вам поможет.   -  person    schedule 01.02.2013
comment
это звучит как ошибка CodeNarc - вы должны просто определить, где вы храните эту конфигурацию, вместо того, чтобы загрязнять BuildConfig   -  person Tomas Lin    schedule 02.02.2013
comment
@Sérgio: это замечательная суть :)   -  person Guillaume    schedule 08.01.2014


Ответы (1)


Не надо так.

Плагин Codenarc позволяет вам сохранять конфигурацию codenarc извне. См. здесь http://grails.org/plugin/codenarc#Configuring The Codenarc Properties< /а>

Здесь приведен пример настройки codenarc, который у меня есть в BuildConfig.groovy.

codenarc.processTestUnit = false
codenarc.processTestIntegration = false
codenarc.processViews = true
codenarc.propertiesFile = 'grails-app/conf/codenarc.properties'
codenarc.ruleSetFiles = [
        "rulesets/basic.xml",
        "rulesets/braces.xml",
        "rulesets/grails.xml",
        "rulesets/groovyism.xml",
]

Здесь мы также определяем внешний файл codenarc.properties, который мы используем для включения/выключения частей правил из каждого из включенных наборов правил. Пример содержимого этого codenarc.properties файла приведен здесь:

# some gsp's MUST have embedded CSS and/or embedded Javascript which requires the use of semicolons.
UnnecessarySemicolon.doNotApplyToFileNames = *.gsp
# we're not going to enforce these
UnnecessaryGString.enabled = false
UnnecessaryReturnKeyword.enabled = false

Таким образом, вы можете не загрязнять свой BuildConfig нежелательными вещами, как упоминал Томас.

Надеюсь это поможет.

Том

person dawogfather    schedule 29.07.2013