Java 프로그래밍을 몇 주 동안하고 클래스 경로 외부에있는 폴더에서 pentao 보고서 정의를 가져 오려고했지만 지금까지 성공하지 못했습니다.Java 클래스 패스 (pentaho) 외부에서 리소스를로드하는 중
성공적 그러나 내가 클래스 경로 외부에 절대 경로에서 활용하는 방법을 알아낼 수없는 오전, 클래스 경로에 포함 된 폴더에서 정의를로드 다음 : 나는 확실하지 않다
// Parse the report file
final URL reportDefinitionURL = classloader.getResource("some/path/inclass/Sample1.prpt");
final ResourceManager resourceManager = new ResourceManager();
final Resource directly = resourceManager.createDirectly(reportDefinitionURL, MasterReport.class);
return (MasterReport) directly.getResource();
이 펜타 특정 또는 일반 자바 문제입니다,하지만 어떻게 나는 내가 이것을 시도 등
"/usr/share/pentaho/Sample1.prpt" ?
클래스 경로에 위치하지 않는 절대 경로 (리눅스)를 기반으로 파일 정의를 얻을 수있는 경우 :
File file = new File("/usr/share/pentaho/");
URL url = file.toURI().toURL();
URL[] urls = new URL[]{url};
ClassLoader cl = new URLClassLoader(urls);
final URL reportDefinitionURL = cl.getResource("Sample1.prpt");
나는 또한 외부 실행시 경로하지만 그 중 하나가 작동 표시되지 않습니다를 포함하여 시도
: 모든 지원이 크게 감사합니다
java -cp ./lib/*:/usr/share/pentaho/*.prpt ...
!