我試圖運行this example,但我在配置時遇到了一些問題。如何在Eclipse中設置log4j.properties?
我在控制檯複製log4j-jms.properties
,jndi.properties
,Log4jJMSAppenderExample.java
ProjectJMS
|
\_ src
| \_ Log4jJMSAppenderExample.java
| \_ jndi.propeties
\_ log4j-jms.properties
和運行activemq
。
當我跑我的例子中,我得到了
log4j:WARN No appenders could be found for logger (org.apache.activemq.transport.WireFormatNegotiator).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.`PropertyConfigurator.configure("log4j-jms.properties");`
,所以我說
PropertyConfigurator.configure("log4j-jms.properties");
現在我可以看到在Eclipse控制檯日誌,但仍與此警告
log4j:WARN No appenders could be found for logger (org.apache.activemq.transport.WireFormatNegotiator).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
2012-08-13 10:21:44,741 INFO Log4jJMSAppenderExample - Test log
Received log [INFO]: Test log
和在控制檯與activemq
我得到
WARN | Transport Connection to: tcp://127.0.0.1:2005 failed: java.net.SocketException: Connection reset
爲什麼我會收到這些警告?
我的進口是否錯誤?
import javax.jms.Connection; import javax.jms.Message; import javax.jms.MessageConsumer; import javax.jms.MessageListener; import javax.jms.Session; import org.apache.activemq.ActiveMQConnectionFactory; import org.apache.activemq.command.ActiveMQObjectMessage; import org.apache.log4j.Logger; import org.apache.log4j.PropertyConfigurator; import org.apache.log4j.spi.LoggingEvent;
我的文件在錯誤的地方嗎?
如何在Eclipse中設置配置文件?沒有使用
PropertyConfigurator.configure("log4j-jms.properties");
?在我的例子中沒有像這樣的行。
我移動了這個文件,並在VM參數中添加了'-Dlog4j.configuration = log4j-jms.properties'。現在就工作,謝謝。 – alicjasalamon 2012-08-13 08:58:06
爲什麼你需要'log4j-jms.properties'?你根本不需要這個。 'log4j.properties'是Log4J的系統默認配置屬性。 – 2012-08-13 08:59:39
我在我的問題中犯了一個錯誤。我將文件命名爲'log4j-jms.properties',沒有'log4j.properties'。我可以重命名它,但它工作正常。 – alicjasalamon 2012-08-13 09:05:16