Log4j: WARN Не найдено ни одного приложения для журнала (запуск файла jar, а не веб-приложения)
Прежде всего - да, я прочитал несколько вопросов и ответов по этой теме, и не могу найти ни одного из решений, которые мне помогли бы. Я не использую Tomcat или JBoss, и у меня нет файла web.xml
для изменения. Я использую Java 6.0 и log4j-1.2.8.jar
.
Я создаю исполняемый файл JAR с IDEA IntelliJ с библиотеками JAR, упакованными отдельно и связанными через манифест. Я запускаю свой код на сервере Linux таким образом:
[email protected]:/mydir> java -jar code/myjar.jar
log4j:WARN No appenders could be found for logger (FactoredEventsForTrna).
log4j:WARN Please initialize the log4j system properly.
Мой файл конфигурации log4j (который я поместил в mydir
и mydir/code
, на всякий случай):
## Logger configure file for myproject
log.dir=log/
datestamp=yyyy-MM-dd/HH:mm:ss.SSS
log4j.rootLogger=TRACE, file, proappender, console
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.maxFileSize=1GB
log4j.appender.file.maxBackupIndex=5
log4j.appender.file.File=log/mydebug.log
log4j.appender.file.threshold=TRACE
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{${datestamp}} %5p: %c{2} - %m%n
log4j.appender.proappender=org.apache.log4j.RollingFileAppender
log4j.appender.proappender.maxFileSize=5GB
log4j.appender.proappender.Threshold=INFO
log4j.appender.proappender.File=log/myinfo.log
log4j.appender.proappender.layout=org.apache.log4j.PatternLayout
log4j.appender.proappender.layout.ConversionPattern=%d{${datestamp}} %5p: %c{2} - %m%n
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Threshold=DEBUG
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{${datestamp}} %5p: %c{2} - %m%n
И я создал каталог log/
в mydir
и mydir/code
, опять же, на всякий случай.
Есть идеи?
Ответы
Ответ 1
Существует множество возможных опций для настройки конфигурации log4j. Один из них заключается в том, что файл будет называться точно "log4j.properties" и находиться в вашем пути к классам. Другой - назвать его, как вы хотите, и добавить свойство System в командную строку при запуске Java, например:
-Dlog4j.configuration=file:///path/to/your/log4j.properties
Все они описаны здесь http://logging.apache.org/log4j/1.2/manual.html#defaultInit
Ответ 2
Решение
- Скачать файл
log4j.jar
- Добавьте файл
log4j.jar
для построения пути -
Регистратор звонков по:
private static org.apache.log4j.Logger log
= Logger.getLogger(<class-where-this-is-used>.class);
-
если свойства log4j не существуют, создайте новый файл log4j.properties file новый файл в каталоге bin:
/workspace/projectdirectory/bin/
Пример файла log4j.properties
log4j.rootLogger=debug, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%t %-5p %c{2} - %m%n
Ответ 3
Я переместил свой файл log4j.properties в папку ресурсов, и он отлично работал у меня!
Ответ 4
Человек, у меня была проблема в одном из моих проектов eclipse, удивительно, что проблема заключалась в том, что баны в моем файле .project. верьте или нет!
Ответ 5
Вы найдете log4j.properties в solr/examples/resources.
Если вы не найдете файл, я поставлю его здесь:
# Logging level
solr.log=logs/
log4j.rootLogger=INFO, file, CONSOLE
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%-4r [%t] %-5p %c %x \u2013 %m%n
#- size rotation with log cleanup.
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.MaxFileSize=4MB
log4j.appender.file.MaxBackupIndex=9
#- File to log to and log format
log4j.appender.file.File=${solr.log}/solr.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%-5p - %d{yyyy-MM-dd HH:mm:ss.SSS}; %C; %m\n
log4j.logger.org.apache.zookeeper=WARN
log4j.logger.org.apache.hadoop=WARN
# set to INFO to enable infostream log messages
log4j.logger.org.apache.solr.update.LoggingInfoStream=OFF
Привет
Ответ 6
Переместите файл log4j.properties в папку src.
Откройте проводник Windows, перейдите в каталог, в котором находится ваш проект.
Перейдите в каталог bin и удалите все папки с ним.
Теперь в проекте eclipse щелкните проект ---- > clean ---- > OK
Это заставило бы его снова создать проект, все содержимое, удаляемое из каталога bin, будет воссоздано.
Я взял, чтобы понять это.
Время от времени прямое нажатие на кнопку очистки не работает
Ответ 7
поместите папку, в которой есть файл свойств для входа в источник пути сборки java. Вы можете добавить его, щелкнув правой кнопкой мыши проект ---- > построить путь ----- > настроить путь сборки ------ > добавить t