-Dlogback.configurationFile
- это не то же самое, что установка в качестве переменной среды.
Флаг -D - это параметр Java для вашей программы (доступный по System.getProperty()
), тогда как переменная среды определяется по export
будет доступно по System.getenv()
.Глядя на код Logback, кажется, что он использует System.getProperty()
для чтения значения logback.configurationFile
.
Таким образом, в действительности вы должны передать параметр JVM при запуске, это означает, что вы можете установить средуизменяйте в зависимости от того, что вам нравится, а затем просто используйте его при запуске JVM.
export LOGBACK_CONFIG_FILE_LOCATION=/tmp/logback.conf
java -Dlogback.configurationFile=${LOGBACK_CONFIG_FILE_LOCATION}