Как изменить местоположение по умолчанию в 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
потому что именно там обычно живут настройки по умолчанию - изменение может потенциально сломать что-то еще.