내가이 프로그램은 모든 하나 개의 디렉토리 및 4 개 속성에서 다른 jar 파일의 번호를 사용log4j는 jar 파일의 속성을 좋아합니다?
java -cp .:./lib -Duser.timezone=GMT -Dlog4j.debug -jar programName.jar
실행 jar 파일에서 리눅스에 직접을 실행하고있어 자바 응용 프로그램이 모든 그중를 파일 다른 디렉토리 (현재 디렉토리)에. 두 디렉토리 모두 CLASSPATH
에 포함됩니다.
충분히 간단합니다.
Log4j가 log4j.properties
을 찾지 못한 것을 제외하면됩니다. 내가 관리해야하는 유일한 방법은 그것을 찾을 수 있도록 log4j.properties
이 아닌 내가 원하는 것입니다 programName.jar
에 포함하는 것입니다, 나는 모든 다른 속성의 파일과 같은 디렉토리에있는이 log4j.properties
를 사용하여 갖고 싶어, 그들은에 CLASSPATH
이며 예상대로 발견됩니다. 사용
다른 JAR 파일은 :
jdom-2.0.5.jar
log4j-1.2.17.jar
ojdbc7.jar
quartz-2.2.1.jar
slf4j-api-1.7.7.jar
slf4j-log4j12-1.7.7.jar
slf4j-log4j12-1.7.7.jar
이 log4j가 속성 파일을 찾을 때 CLASSPATH
을 검사하지 못하도록하는 구성을하고 있는지 궁금합니다. 내 코드에는 특성 파일의 위치를 지정하기위한 지침이 포함되어 있지 않습니다.
아직 -jar
옵션이없는 프로그램을 실행 해 보았습니다. 다음에 시도해 보겠습니다.
지금까지 벨소리가 울립니까?
귀하의 제안에 감사드립니다. 그러나 귀하의 추론을 이해하지 못합니다. 내 log4j.properties는 그것이 포함하고있는 의미에서 만 사용자 정의입니다. 이름과 위치는 표준입니다. 표준 (비 xml) 이름을 사용할 때 이름을 지정해야하는 이유를 설명 할 수 있습니까? – user835745
내 대답이 업데이트되었습니다. 이게 당신을 도울 수 있기를 바랍니다. :) –
안녕하세요 폴, 고마워요, 당신의 제안이 도움이 되었어요. 안타깝게도 Log4j가 CLASSPATH에 있더라도 log4j.properties를 찾지 못하는 이유를 알지 못해 좌절감을 느낍니다. – user835745