Как изменить местоположение по умолчанию в groovysh.profile?

Мне нужно запустить несколько приложений на одном хосте с тем же пользователем с другим набором пользовательских команд, зарегистрированных в файле groovysh.profile. Можно ли сказать groovysh не загружать файл $HOME/.groovy/groovysh.profile и вместо этого загружать то, что установлено в некотором аргументе командной строки?

1 ответ

Нет, если вы не готовы измениться user.home значение. код groovysh.groovy говорит:

File getUserStateDirectory() {
    def userHome = new File(System.getProperty('user.home'))
    def dir = new File(userHome, '.groovy')
    return dir.canonicalFile
}

Так что вы могли бы сделать -Duser.home=/foo, Обратите внимание, что groovyshell все еще ожидает .groovy папка в /foo, Также имейте в виду, что многие другие программы и утилиты используют user.home потому что именно там обычно живут настройки по умолчанию - изменение может потенциально сломать что-то еще.

Другие вопросы по тегам