我想将log4j(用于consol)添加到项目中的测试中(我使用hibernate和spring)。 我在test / resources中添加了log4j.properties:
nlogn
并写入测试类:
log4j.rootLogger=INFO, 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=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
的gradle:
import org.apache.log4j.Logger;
private Logger logger = Logger.getLogger(MyTest.class);
@Test
public void test1() {
logger.info("info test");
logger.debug("debug test");
}
但我在控制台中没有这个文本(testCompile 'log4j:log4j:1.2.17'
),我在控制台中:
"info test"
答案 0 :(得分:0)
您是否可以验证log4j.properties资源是否在类路径中并且是在运行时找到的?通常,如果在eclipse项目中将test / resources文件夹添加到源路径,则bin文件夹应该具有它(输出文件夹名称可以不同,但此文件必须位于类路径上)。
答案 1 :(得分:0)
在src文件夹中添加log4j.xml文件,并在xyz.log <!-- FILE Appender -->
<appender name="FILE" class="org.apache.log4j.FileAppender">
<param name="File" value="D:\\xyz.log" />
<param name="MaxFileSize" value="1MB" />
<param name="MaxBackupIndex" value="100" />
<param name="Append" value="false" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="[%d{dd/MM/yy hh:mm:ss:sss z}] %5p %c{2}: %m%n" />
</layout>
</appender
的位置更改下面的文件位置。
&GT;
答案 2 :(得分:0)
您需要将console appender添加到log4j。我用log4j.xml完成了它,而不是属性文件。我希望你可以将它转换为你的log4j.properties文件。
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d - %m%n"/>
</layout>
</appender>
最后,您需要将此appender添加到root logger。
<root>
<priority value="debug"/>
<appender-ref ref="error"/>
<appender-ref ref="console"/>
<appender-ref ref="trace"/>
</root>
希望这有帮助