Установка местоположения конфигурационного файла Grape

Как настроить Grape для поиска настраиваемого файла конфигурации в месте, отличном от ~/.groovy/grapeConfig.xml по умолчанию? К сожалению, официальная документация на http://groovy.codehaus.org/Grape выглядит неполной и не не охватывают этот конкретный случай.

Например, я хотел бы указать такой путь, как $PROJECT_DIR/src/main/resources/groovyConfig.xml, чтобы другим членам моей команды не приходилось создавать и поддерживать свои собственные файлы groovyConfig.xml в своих пользовательских/домашних каталогах.


person sversch    schedule 16.05.2013    source источник


Ответы (1)


Чтобы указать собственный путь к файлу конфигурации Grape, установите системное свойство grape.config, например. если grape.config установлено на /home/user/customGrapeConfig.xml, то Grape будет использовать его в качестве файла конфигурации.

Полный список параметров, связанных с файлами конфигурации Grape, согласно файлу Groovy. Ветка списка рассылки разработчиков выглядит следующим образом:

  1. Grape будет использовать значение системного свойства grape.config (если оно задано) в качестве пути к конфигурационному файлу.
  2. If grape.config is not set, then:
    • If the groovy.root system property is set, Grape will look for the configuration file in the directory specified; otherwise
    • Если groovy.root не задано, он использует ${user.home}/.groovy/ в качестве корневого каталога Groovy и ищет там файл конфигурации.
  3. Если в соответствии с предыдущими шагами не обнаружено файла конфигурации, defaultGrapeConfig.xml извлекается из загрузчика классов GrapeIvy (т. е. из Groovy JAR).
person sversch    schedule 16.05.2013
comment
Этот алгоритм находится в git-wip-us.apache.org/repos/asf?p=groovy.git;a=blob;f=src/main/ - person eel ghEEz; 18.06.2016
comment
Я хотел интегрировать Groovy Grape/Ivy с локальным кешем Maven. GrapeIvy читает только артефакты Maven. Здесь представлена ​​повторная реализация, использующая Maven как для чтения, так и для записи кэшированных артефактов: github.com/yihtserns/grape-maven. - person eel ghEEz; 18.06.2016
comment
новая ссылка для алгоритма теперь git-wip-us.apache.org/repos/asf?p=groovy.git;a=blob;f=src/main/ (как за комментарий @eelghEEz) - person Donatello; 07.06.2021