2012-01-31 3 views
3

이클립스에서 그리즐리 프레임 워크를 사용하여 junit 저지 서비스 테스트를 실행하면 로그가 stderr로 전송됩니다. 결과적으로 콘솔 창에 초점이 맞춰지고 로그가 빨간색으로 보입니다.그리즐리가 이클립스에서 성가신 stderr에 기록됩니다.

적절한 구성 단계를 알 수 없습니다. 내 읽기에서 내 pom.xml에 slf4j.jar를 추가하고 어딘가에 로깅 속성 파일을 추가해야하는 것처럼 보입니까? 하지만 난 slf4j 항아리가 추가 (거기에 많은) 또는 로깅 속성 파일을 어디에 배치할지 확신 할 수 없습니다.

솔직히 말해서 이것이 일반적인 접근 방식이라면.

p.s. 또한 내가 일식에서 표준 오류 변경 기능 "쇼 콘솔을 해제 할 수 있습니다 알고 있지만 차라리 문제를 통해 페인트하지 않을거야. :)

답변

2

을 :

package org.trebor.www; 

import java.util.logging.ConsoleHandler; 
import java.util.logging.Handler; 
import java.util.logging.Logger; 

public class LoggerTrap 
{ 
    public LoggerTrap() 
    { 
    Handler handler = 
     new ConsoleHandler() 
    { 
     { 
     setOutputStream(System.out); 
     } 
    }; 

    Logger.getLogger("").addHandler(handler); 
    } 
} 

-Djava.util.logging.config.class=org.trebor.www.LoggerTrap 

모든 자바 ARG이 JVM을 추가 그것이 사실 인 경우에, 당신은 여기를 구성하는 방법에 대한 읽을 수 있습니다. 로깅은 STDOUT으로 이동합니다. 이 과정에서 나는 java.logging을별로 좋아하지 않는다는 것을 배웠다.

+0

당신은 혼자가 아닙니다 (그리고 log4j는 더 좋지 않습니다). slf4j는 몇 년 동안 나의 선호도가되었습니다. –

+3

그리즐리 로그 출력을 표시 할 수 있었습니까? 나는 같은 빨간색 출력 문제가 있었지만 문제를 해결하기 위해 솔루션을 사용했지만 그 이후에는 그리즐리에서 전혀 로깅을 볼 수 없다는 문제가있었습니다. 나는 log4j.properties 파일에 그리즐리를 언급하지 않고 시도했다. Grizzly 로깅을 보는 방법에 대한 힌트가 있습니까? 감사! –

+0

그것은 나를 위해 작동합니다. – ksl