На самом деле, другие ответы неверны, так как они советуют вам использовать системное свойство, которое использует log4j 1.x, а не то, что использует Log4j 2.
Для Log4j 2 вы хотите использовать -Dlog4j2.configurationFile=/path/to/log4j2.xml
. Если вы укажете только -Dlog4j2.configurationFile=log4j2.xml
, Log4j будет искать этот файл в пути к классам. Очевидно, что имя может быть чем угодно. Log4j также поддерживает помещение системных свойств в файл с именем log4j2.component.properties
, поэтому, если вы не хотите указывать их в командной строке, вы можете включить их в файл Java Properties с таким именем в вашем приложении.
Независимо от того, что вы делаете, вы должны открыть баг с третьей стороной, так как помещение файла конфигурации регистрации в jar библиотеки - плохая практика.