컴퓨터 지식 네트워크 - 컴퓨터 지식 - Eclipse의 log4j 콘솔은 로그를 표시하지 않습니다. 구성은 다음과 같습니다.

Eclipse의 log4j 콘솔은 로그를 표시하지 않습니다. 구성은 다음과 같습니다.

#------------------ ?

#

log4j.rootLogger=INFO, stdout ?

log4j.logger.com.ibatis = 디버그 ?

log4j.logger.com.ibatis.common.jdbc .SimpleDataSource = 디버그 ?

log4j.logger.com.ibatis.common.jdbc.ScriptRunner = 디버그 ?

log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate = 디버그 ?

log4j.logger.java.sql.Connection = DEBUG ?

log4j.logger.java.sql.Statement = DEBUG ?

log4j. .sql.PreparedStatement = DEBUG?

log4j.logger.java.sql.ResultSet = INFO ?

log4j.appender.stdout=org.apache.log4j.ConsoleAppender ? >

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout?

1. 실행 중인 VM의 매개변수에 -Dlog4j.debug를 추가하여 log4j의 테스트 정보를 출력합니다.

2. 또는 VM 매개변수에 log4j 구성 파일 주소를 강제로 추가합니다.?-Dlog4j.configuration=log4j-

config_folder/log4j.xml

일반적으로 첫 번째 단계를 통해 원인을 찾은 후 상황에 따라 해결해야 합니다.

매개변수 추가 방법:

실행/디버그를 사용하는 경우

마우스 오른쪽 버튼 클릭 ->실행/디버그 아래에는 실행 구성/디버그 구성이 있습니다.->(x)=인수

s->아래에는 VM 인수가 있습니다. 매개변수를 추가하고 적용을 선택하세요. 그리고 실행/디버그합니다.

2. myeclipse를 사용하는 경우 Tomcat->Tomcat n.x->JDK->Optional Java VM?

인수

원본 텍스트:/questions/3501355/log4j-output-not-displayed-in-

eclipse-console

어떤 이유로 내 Eclipse 콘솔에 더 이상 Log4j INFO 및 DEBUG가 표시되지 않습니다.

JUnit 테스트를 실행할 때의 진술입니다. 코드 측면에서는 아무런 변화도 없었습니다.

이클립스 구성과 관련이 있는 것 같습니다.

유닛 테스트에서 수행하는 작업은 다음과 같습니다. 어떤 이유로 ERROR?

문만 Eclipse 콘솔에 표시됩니다. 이유는 무엇입니까?

public class SampleTest

{?private static final Logger LOGGER = Logger.getLogger(SampleTest.class);

@Before

public void init()에서 예외 발생

{?// Log4J junit 구성.

BasicConfigurator.configure();

LOGGER.info("INFO TEST");

LOGGER.debug("DEBUG TEST");

LOGGER.error("ERROR TEST");}}

세부정보:

log4j -1.2 .6.jar

junit-4.6.jar Eclipse

Java 개발자용 IDE, 버전: Helios 릴리스, 빌드 ID: 20100617-1415

java ?eclipse ?junit?log4j

share|이 질문을 개선하세요edited? 17 aug '10 at

10:21leppie68.9k8106203asked? 17 aug '10 at 10:11javaExpert1242210

1?이미 답변을 얻으셨나요? 거의 모든 가능한 솔루션이 설명되어 있습니다.

도움이 되었는지 흥미로울 것입니다. >댓글 추가

답변 11개

활성?가장 오래된?투표

찬성 투표?1

1? 반대 투표

Eclipse에서 구성 실행으로 이동한 다음 -VM 인수에 다음을 추가합니다. -

Dlog4j.configuration=log4j-config_folder/log4j.xml

log4j-config_folder를 log4j.xml이 있는 폴더 구조로 바꾸시겠습니까?

파일

share|이 답변을 개선하시겠습니까? 17 aug. '102010-08-17 12:24Huzi--- Javiator51945

제안해 주셔서 감사합니다. 그래도 약간 짜증이 나긴 하지만요.

두 가지 이유: 1) BasicConfigurator.configure()를 사용하면 어떨까 생각했습니다. 그럴 필요는 없었나요?

log4j.properties가 필요하지 않았습니다. 2) 간단한 JUnit 테스트를 실행할 때 그냥 바로 실행하고 싶나요?

클릭하고 "실행"하지 않아도 됩니다. 구성을 정의하기 위해 원래 테스트를 다시 시도했지만?

Eclipse의 어딘가에 정의된 일부 변수를 사용하고 있는지 확인하기 위해 다음 행을 추가했습니다

: System.out. println(System.getProperty("log4j.configuration")); 그런데

out "null"이 인쇄됩니다 –?javaExpertAug 17 '10 at 13:50hmmm.. 흥미롭네요.. 나중에 다시 연락드리겠습니다 –

Huzi--- Javiator? 18 aug '10 at 8:59

댓글 추가

찬성 투표?8?비추천

?log4j.properties?또는?log4j.xml?파일에서 로그 수준을 확인하세요. 아마도

?DEBUG

share|improve 대신?ERROR?로 설정되어 있을 것입니다. 답변이요?Aaron Digulla153k36236405

1?답글을 보내주셔서 감사합니다. Aaron. log4.properties를 확인했는데 INFO로 설정되어 있습니다. 이제 DEBUG로 변경했지만 아무런 차이가 없나요?

log4j.rootLogger=DEBUG

, stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.stdout.layout.ConversionPattern=%t:%d{ddMMMyy HH:mm:ss.SSS}

%-5p (%F:%L) %m%n –?javaExpert ?17 aug '102010-08-17 10:2310?-Dlog4j.debug?를

VM 환경 시작 속성에 추가하여 log4j가 디버깅 정보를 인쇄하도록 합니다. -

아마도 다른 log4j 구성 파일이 의도한 것보다 클래스 경로(예:

JAR 내에 번들로 포함된 파일)에서 선택되고 있습니다. @javaExpert: 이 경우 클래스 경로 어딘가에서 다른 log4j.properties를 찾으세요. JAR도 살펴보세요! –?Aaron Digulla?17 aug. >

댓글 추가

찬성 투표?5?비추천

한 가지 주의할 점은 클래스 경로에 log4j.properties 파일이 있는 경우에는 그렇지 않다는 것입니다.

BasicConfigurator를 호출해야 합니다. 속성 파일을 구성하는 방법에 대한 설명은

여기에 있습니다.

실행을 시도하면 IDE가 문제를 일으키는지 정확히 알 수 있습니다. 이 클래스는

클래스 경로에 log4j.jar 및 log4j.properties가 있는 명령줄에서 실행됩니다.

上篇: 2023년에는 어떤 생체 휴대폰을 구입하는 것이 좋습니다? 下篇: h9에서 공장 설정을 복원하는 방법
관련 내용