khi triển khai ứng dụng/Hibernate mùa xuân của tôi, tôi nhận được những cảnh báo sau đây liên quan đến khai thác gỗ:bối rối bởi Systems Logging Java với Spring và Hibernate
log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader).
log4j:WARN Please initialize the log4j system properly.
ngạc nhiên đối với tôi là thiếu thông tin từ Google/SO tìm kiếm . Điều duy nhất có liên quan là bài đăng SO này Problem with Commons Logging/Log4j setup in spring webapp with tomcat 6
Tuy nhiên, điều này thậm chí còn vượt xa tôi. Ai đó có thể làm rõ các hệ thống ghi nhật ký khi chơi ở đây hay chỉ cho tôi một tài nguyên RECENT về vấn đề này (có một số kết quả tìm kiếm google cổ đại không thực sự áp dụng). Cụ thể, các vấn đề tôi đang vật lộn với:
Sự khác biệt giữa ghi nhật ký, log4j, slf4j và JCL. Sự hiểu biết của tôi là slf4j là một trình bao bọc, trong khi commons-logging và log4j là các triển khai thực tế. Tôi không biết JCL khớp ở đâu.
Cách định cấu hình ghi nhật ký cho Spring. Có gì trong tệp web.xml, tôi có cần tệp log4j.properties hoặc tệp log4j.xml không? Nó đi đâu, trong WEB-INF? Có bất cứ điều gì đi trong tập tin applicationContext.xml của tôi? (xin lỗi nhưng tôi cần phải bắt đầu từ số không ở đây).
Tôi đang sử dụng Hibernate trong dự án của mình và bao gồm qua Maven. Có vẻ như Hibernate sử dụng slf4j-đơn giản. Tôi đã thấy cảnh báo nói rằng tôi không thể có slf4j-đơn giản và slf4j-log4j cả trên classpath. Tôi đã không bao gồm slf4j-log4j như là một phụ thuộc, nhưng Hibernate phải được bao gồm nó. Làm thế nào để tôi giải quyết vấn đề này? Tôi có thể buộc Hibernate sử dụng log4j thay thế không?
Mọi trợ giúp sẽ được đánh giá cao. Cảm ơn.
chỉnh sửa:
Cảm ơn tất cả các câu trả lời cho đến nay. Tôi đưa ra những gợi ý này. Còn ứng dụng web mùa xuân cụ thể thì sao? Tôi đã nhìn thấy các ví dụ về người nghe và các tham số và không được đưa vào tệp web.xml. Điều này cũng được yêu cầu?
skaffman câu trả lời xuất sắc – underdog