我在 Mac OS Mojave 上使用 Eclipse IDE 2018-12 进行项目开发,不幸的是无法在 eclipse 控制台中看到默认的 spring 框架控制台日志,令人惊讶的是我能够看到项目中使用的其他 System.out.println 语句,有人来了吗这个问题还是 eclipse IDE 2018-12 的错误?
达令说
浏览 114回答 1
1回答
慕丝7291255
根据上面的讨论,我在下面提供了配置 spring 项目的方法。它不是 maven 或 gradle 类型的项目。首先,您必须创建一个log4j.properties文件并将该文件保存在您的资源文件夹中。我在下面提供了示例 log4j.properties 文件。# Root logger optionlog4j.rootLogger=DEBUG, stdout, file# Redirect log messages to consolelog4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.Target=System.outlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n# Redirect log messages to a log filelog4j.appender.file=org.apache.log4j.RollingFileAppender#outputs to Tomcat homelog4j.appender.file.File=${catalina.home}/logs/myapp.loglog4j.appender.file.MaxFileSize=5MBlog4j.appender.file.MaxBackupIndex=10log4j.appender.file.layout=org.apache.log4j.PatternLayoutlog4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n右键单击 eclipse 中的资源文件夹,然后单击构建路径 > 用作源文件夹请参见下图。最后,我修改了你的 HelloClient.java将以下行用于 Log4j 记录器。private static final Logger log = Logger.getLogger(HelloClient.class);而不是以下行private static Log log = LogFactory.getLog(HelloClient.class);另外,导入以下行。import org.apache.log4j.Logger;注释掉代码中的以下行。import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;使用以下行ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");代替以下行ApplicationContext applicationContext = new ClassPathXmlApplicationContext("resources/applicationContext.xml");现在在 eclipse 中运行 HelloClient.java 类,您可以在控制台中看到数字日志行。