소개 : 나는 proj-a, proj-b, proj-c 등 여러 프로젝트가 있습니다.이 프로젝트는 종속성에서 pom.xml을 통해 연결됩니다.log4j 로깅이 교차 프로젝트 응용 프로그램에 표시되지 않습니까?
내 문제는 다음과 같습니다. proj-a는 모든 프로젝트에 공통적 인 모든 주요 프레임 워크 프로젝트입니다. 따라서 내 정적 로그 처리기는 해당 프로젝트에 포함되어 있습니다. 그것은 이제 proj-b에 의해 참조되며 로그 처리기에 액세스 할 수 있지만 로그 할 때마다 지정된 파일이나 콘솔에 기록하지 않습니다. proj-a에서 junit 테스트를 작성하고 로그 핸들러를 테스트 했으므로 구성이 올바른지 알고 출력에 필요한 결과를 출력하고 파일 및 콘솔 디스플레이의 로그를 출력합니다.
PROJ-B 샘플 코드 다음과 같이
public class TestServicePublisher {
public static void main(final String[] args) {
// System.out.println("Test Service started.");
// Endpoint.publish("http://localhost:8080/cas-service", new TestService());
LogHandler.logDebug(TestServicePublisher.class, "main", "Starting Login Service");
Endpoint.publish("http://localhost:8080/cas-service/login", new LoginService());
}
}
Proj를-A의 logHandler의 샘플이다 :
public static String logDebug(Class clazz, String methodName,
Integer messageCode, List<String> messageAttributes) {
List<String> classMethodAttributes = createClassMethodAttributes(clazz,
methodName);
String message = retrieveMessage(messageCode, messageAttributes,
classMethodAttributes);
Logger logger = Logger.getLogger(clazz);
logger.debug(message);
return message;
}
PROJ-A는 물론 Log4J JAR 파일이 포함 log4j.xml.
감사합니다. :) – kyerie
shamis를 말할 슬픈, junit 테스트를 사용하면 속성 파일이 작동하므로이 중 아무 것도 사용할 수 없습니다. 그러나 projectA에서 주요 방법을 만들면 Oded Peer가 자신의 게시물에 명시한 오류가 표시됩니다. – kyerie