Из документов :
Давайте начнем с обсуждения шагов инициализации, которые следует выполнить после входа в систему, чтобы попытаться настроить себя:
Logback пытается найти файл с именем logback-test.xml в пути к классам.
Если такой файл не найден, logback пытается найти файл с именем logback.groovy в пути к классам.
Если такой файл не найден, он проверяет наличие файла logback.xml в пути к классам.
Если такой файл не найденсредство загрузки поставщика услуг (представленное в JDK 1.6) используется для разрешения реализации интерфейса com.qos.logback.classic.spi.Configurator путем поиска файла META-INF \ services \ ch.qos.logback.classic.spi.Configurator в пути к классам.В его содержимом должно быть указано полное имя класса требуемой реализации Конфигуратора.
Если ничего из вышеперечисленного не выполнено, logback автоматически конфигурируется с использованием BasicConfigurator, что приводит к тому, что выходные данные журналов будут направлены наконсоль.
Последний шаг - это последняя попытка предоставить стандартную (но очень базовую) функцию ведения журнала при отсутствии файла конфигурации.
Итак, ответ на этот вопрос ...
Что имеет приоритет: logback.xml или logback-test.xml?
... is Logback-test.xml .
Однако этот вопрос ...
Так как файл logback-test.xml будет иметь приоритет над logback.xml, если мы развернем приложение?
... немного усложняет дело.Если вы развернете и logback-test.xml
, и logback.xml
, тогда logback-test.xml
будет иметь приоритет, но развертывание logback-test.xml
не распространено.Действительно, с учетом местоположений, указанных в вашем вопросе, logback-test.xml
по умолчанию развертываться не будет, поскольку находится в дереве тестов (src/test/resources
).
Опять же, из документов :
Если вы используете Maven и поместите logback-test.xml в папку src / test / resourcesMaven гарантирует, что он не будет включен в произведенный артефакт.Таким образом, вы можете использовать другой файл конфигурации, а именно logback-test.xml во время тестирования, и другой файл, а именно, logback.xml, в производстве.
Итак, в итоге;по умолчанию logback-test.xml
не будет развернут, поэтому logback.xml
будет использоваться в развернутой системе, но logback-test.xml
будет иметь приоритет над logback.xml
при запуске тестовых случаев.