#java #xml #maven #log4j
#java #xml #maven #log4j
Вопрос:
поискал, не нашел ничего подходящего, вот файл конфигурации в папке resources:
log4j.rootLogger=INFO, file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=C:\Users\38096\Desktop\Directories\logs
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
зависимость от maven :
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.13.3</version>
</dependency>
основной код :
static Logger log = LoggerFactory.getLogger(Application.class);
public static void main(String[] args) throws InterruptedException {
log.debug("Hello this is a debug message");
log.info("Hello this is an info message");
Вывод идеи
2020-10-02 22:36:47 DEBUG Application:25 - Hello this is a debug message
2020-10-02 22:36:47 INFO Application:26 - Hello this is an info message
Process finished with exit code 0
но файл журнала не был создан
пытался изменить зависимости, добавил разные коды, такие как
static {
PropertyConfigurator.configure("D:\intelliJIDEAProjects\CRUDCOMPUTER\src\main\resources\log4j.properties");
}
конфигурационный файл
log4j.rootLogger=file, stdout
log4j.appender.file.File=C:\Users\38096\Desktop\Directories\logs
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
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=%d{yyyy-MM-dd HH:mm:ss} %-5p
%c{1}:%L - %m%n
ничего не помогло, я подозреваю, что нет доступа на запись, но я не знаю, как это исправить
Комментарии:
1. Кажется, вы используете log4j2. У этого есть другой файл конфигурации. Используемый вами файл конфигурации предназначен для log4j 1.X. Попробуйте изменить зависимости, чтобы использовать log4j 1.X, или измените файл конфигурации, чтобы он соответствовал спецификациям log4j2.
Ответ №1:
Кажется, вы используете log4j2. У этого есть другой файл конфигурации. Используемый вами файл конфигурации предназначен для log4j 1.X. Попробуйте изменить зависимости, чтобы использовать log4j 1.X, или измените файл конфигурации, чтобы он соответствовал спецификациям log4j2.
(Примечание: это из моего оригинального комментария)