我想在我的Java應用程序中使用log4j(沒有web-app)。因此,我直接在my/src文件夾中添加了配置文件。log4j沒有初始化,沒有找到appender
log4j.properties
log4j.rootLogger=DEBUG
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
我的主類是在一個包,一個子命名空間,內有我試圖登錄如下:
final static Logger logger = Logger.getLogger(MainClass.class);
public static void main(String[] args) {
//BasicConfigurator.configure();
logger.warn("some warning");
}
但仍然收到一條錯誤消息,我不知道該怎麼辦。您可以在上面看到註釋行BasicConfigurator。據我所知,應該讀取log4j.properties而不調用該行,對吧?
log4j:WARN記錄器 (at.company.project.poi.MainClass)沒有找到appender。 log4j:WARN請正確初始化 log4j系統。 log4j:WARN有關更多信息,請參閱 http://logging.apache.org/log4j/1.2/faq.html#noconfig。
什麼你使用的是哪種構建系統? – Schrieveslaach
沒有特定的構建系統,只是Eclipse中一個普通的簡單Java項目。構建路徑內的依賴關係設置正確。如果我使用上面的那一行,那麼我在控制檯上看到輸出,但是不從配置文件中讀取配置。 – Matthias
屬性文件應放置在根文件夾中,而不是src文件夾中。這可能是你的問題。這個線程可能是你感興趣的:https://stackoverflow.com/questions/7390521/change-location-of-log4j-properties –