jar 파일을 실행할 디렉토리의 하위 디렉토리에서 실행 가능한 jar에 필요한 모든 .properties 파일을 넣고 싶습니다.jar manifest 클래스 경로에서 특성 파일의 디렉토리를 지정하는 방법은 무엇입니까?
나는 jar 파일과 같은 디렉토리에 내 .properties의 파일을 보관하는 경우Manifest-Version: 1.0
Build-Jdk: 1.6.0_26
Main-Class: MyMainClass
Class-Path: . conf lib/dependency1.jar
, 모든 것이 잘 작동 : 현재 내 MANIFEST.MF는 다음과 같이 보인다. 서브 디렉토리 conf
으로 이동하면 찾을 수 없습니다. 또한 conf/log4j.properties
과 같이 .properties 파일의 경로를 직접 지정하려고 시도했습니다.
내가 할 수있는 일이 가능합니까?
업데이트 : myproperties.properties
가 conf
하위 디렉토리에있는 경우
InputStream stream = getClass().getClassLoader().getResourceAsStream("myproperties.properties");
는,이 사항이 널의 InputStream을 반환 여기에 실패 내 실행 항아리에 코드의 예입니다. log4j.properties
가 conf
하위 디렉토리에있을 때, 그것의 구성을 찾지 못하는 경우에 대해 그 경고 메시지를 출력합니다
log4j:WARN No appenders could be found for logger (MyMainClass).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
? 그 executabele JAR? 아니면'dependency1.jar'? 정확히 얼마나? – BalusC
실패에 대한 자세한 내용을 질문에 업데이트했습니다. –
다른 실행 위치에 있어야합니까? 아니면 개발 계층의 다른 소스 폴더에서 구성하는 것이 더 낫습니까? – Gray