Должен ли log4.properties быть в пути к классам?

У меня проблемы с размещением моего файла log4j.properties в пути к классам. Я могу использовать его при разработке (Eclipse Indigo), но когда я экспортирую свое приложение как JAR, я не могу.

Я вручную создал файл MANIFEST.MF для экспортированного JAR:

Manifest-Version: 1.0
Main-Class: main.Program
Class-Path: lib/log4j.properties lib/log4j-1.2.15.jar

А затем поместил JAR в эту файловую организацию:

folder
  |-------- app.jar
  |-------- lib
             |--------- log4j.properties
             |--------- log4j-1.2.15.jar

Когда я пытаюсь запустить app.jar, они находят log4j.jar но не log4j.properties:

log4j:WARN No appenders could be found for logger (main.Program).
log4j:WARN Please initialize the log4j system properly.

Мой файл log4j.properties выглядит так:

log4j.rootLogger=INFO, stdout, file

PATTERN=[%d] [%p] [%c{1}]: %m%n

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=${PATTERN}

log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.DatePattern='.'yyyy-MM-dd
log4j.appender.file.File=${logger_file_path}
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=${PATTERN}
9
задан Kevin Panko 5 November 2018 в 16:05
поделиться