타사 항아리를 사용하는 휴식 서비스를 개발했습니다. 그들의 코드를 검토해 보면 ClassLoader.getSystemResource ("log4j.properties")를 사용하여 데이터를 검색하고있는 것으로 나타났습니다. 이 코드는 null을 반환하므로 이후에는 항상 null 포인터 예외가 발생합니다. websphere 8.5.5.7에 배포하고 서버 classpath를 설정하면 동일한 코드가 제대로 작동합니다. 로컬 컴퓨터에서 Liberty를 사용하고 있기 때문에 경로를 검색하지 않습니다.Liberty Server - ClassLoader.getSystemResource는 null을 반환합니다.
server.xml에도 클래스 로더 설정을 시도했지만 사용하지 않았습니다.
<library id="config">
<folder dir="/properties/dev/" includes="*.properties" scanInterval="5s"/>
</library>
<enterpriseApplication id="AbcEAR"location="AbcEAR.ear" name="AbcEAR">
<classloader privateLibraryRef="config"/>
</enterpriseApplication>
감사합니다. Andy. 앞에서 말했듯이 제 3 자 항아리를 사용하고 있으며 코드를 업데이트 할 수있는 권한이 없습니다. 클래스 경로를 찾고 속성 파일을 배치하려고했지만 여전히 null을 받았습니다. –
@Ctsuser/properties/dev를 추가하기 위해 jvm.options에서 JVM 클래스 경로 구성을 추가해 보았습니까? – Alasdair