當使用maven
運行測試時,我想在屏幕上看到輸出。如何在pom.xml中設置類路徑?
把log4j.xml
到我的項目的目錄中(src /測試/資源/ cfg /中)之後,我更新了我的pom
包括
235 <plugin>
236 <groupId>org.apache.maven.plugins</groupId>
237 <artifactId>maven-surefire-plugin</artifactId>
238 <configuration>
239 <skipTests>false</skipTests>
240 <excludes>
241 <exclude>**/*$*.java</exclude>
242 </excludes>
243 <systemProperties>
244 <property>
245 <name>-Dlog4j.configuration</name>
246 <value>file:src/test/resources/cfg/log4j.xml</value>
247 </property>
248 </systemProperties>
249 <additionalClasspathElements>
250 <additionalClasspathElement>src/test/resources/cfg/</additionalClasspathElement>
251 </additionalClasspathElements>
252 </configuration>
253 </plugin>
以上不起作用。當測試運行,我仍然看到以下消息
log4j:WARN Please initialize the log4j system properly.
爲了記錄在案,以下是log4j的
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
3
4 <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
5 <appender name="console" class="org.apache.log4j.ConsoleAppender">
6 <param name="Target" value="System.out"/>
7 <layout class="org.apache.log4j.PatternLayout">
8 <param name="ConversionPattern" value="%-5p %c{1} - %m%n"/>
9 </layout>
10 </appender>
11
12 <root>
13 <priority value ="debug" />
14 <appender-ref ref="console" />
15 </root>
16
17 </log4j:configuration>
我在想什麼嗎?
可能重複[如何顯示在萬無一失的測試resports log4j的輸出(http://stackoverflow.com/questions/4379996/how-to-show-log4j- output-in-surefire-test-resports) – eis
您需要一個真實的文件名,而不是'file:src/test/resources/cfg/log4j.xml' URL。 –