Я написал оболочку вокруг Flyway, которую я вызываю Nomad. Я очень доволен Flyway, за исключением непрерывной регистрации, которую он выполняет вне Maven. Я создал задачу здесь. Каждый пользователь Nomad должен сделать свою собственную конфигурацию log4j, чтобы отключить Flyway. Это проблематично, если этого не сделать, например, во время тестирования Spec. Однако получить конфигурацию правильно сложно, и, кроме того, это нарушает абстракцию моей библиотеки.
У меня такой вопрос: как мне навсегда заглушить flyway, чтобы любой пользователь Nomad не был обременен этой задачей? Я обнаружил, что это log4j.xml
иногда работает:
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ISO8601} %t %-5p %c{1} - %m%n"/>
</layout>
</appender>
<logger name="org.springframework" additivity="false">
<level value="error"/>
<appender-ref ref="console"/>
</logger>
<root>
<priority value="error"/>
<appender-ref ref="console"/>
</root>
</log4j:configuration>
Это душит Flyway до такой степени, что он может быть полезным, а не чрезмерно болтливым. Неправильное направление все еще нарушается, но не часто.