현재 웹 응용 프로그램에 대해 CLASSPATH
항목을 읽어야합니다. CLASSPATH
에는 동일한 이름을 가진 많은 파일이 있습니다. 클래스 패스에 나타나는 위치를 확인하고 싶습니다. 예 : path:\file.txt;path2:\file.txt...
.웹 응용 프로그램을 실행하기위한 클래스 경로 항목 가져 오기
도움 주셔서 감사합니다.
종류는 세바스찬
현재 웹 응용 프로그램에 대해 CLASSPATH
항목을 읽어야합니다. CLASSPATH
에는 동일한 이름을 가진 많은 파일이 있습니다. 클래스 패스에 나타나는 위치를 확인하고 싶습니다. 예 : path:\file.txt;path2:\file.txt...
.웹 응용 프로그램을 실행하기위한 클래스 경로 항목 가져 오기
도움 주셔서 감사합니다.
종류는 세바스찬
이러한 시도에 관하여 : :
및 \
가 높은 시스템에 의존하기 때문에
// get the compact classpath value
String path = System.getProperty("java.class.path");
// the character : on windows and ; on unixes
String separator = System.getProperty("path.separator");
// the character \ on windows and/on unixes
String fileSep = System.getProperty("file.separator");
당신은
separator
및
fileSep
이 필요합니다.
'문자열
ClassLoader c=getClass().getClassLoader(); logmsg("c="+c); URLClassLoader u=(URLClassLoader)c; URL[] urls=u.getURLs(); for (URL i : urls) { logmsg("url: "+i); }
그것은이 결과를 준 path = System.getProperty ("java.library.path");'내가 찾던 것을 제공하지 않는다. – sebastian
수정 됨. 대신에'java.class.path'를 사용해주세요. – vbence
나는 또한 시도되었습니다. 'String path = System.getProperty ("java.class.path");'나는 env 변수를 리턴하고 웹 어플리케이션이 자원을 찾을 때 사용할 변수가 아니라고 가정합니다. 왜냐하면 나는 파일을 포함하지 않는 위치를 얻었고 그 파일은 발견 될 것이다. – sebastian
일반적으로 파일은 WEB-INF/lib 및 WEB-INF/classes에 있어야합니다. 신비가 뭐야?
당신은 java/endorsed와 tomcat/lib에 우선권을 가지고있는 물건을 가질 수도 있습니다 : – extraneon
지금은'System.getProperty ("java.class.path")'를 실행하면 콘솔 응용 프로그램이나 멋진 문자열을 테스트 할 수 있습니다. 함께; separeted 항목. 웹 응용 프로그램에서도 이걸 얻고 싶습니다. 나는 웹 애플리케이션 클래스 패스가 생성되고'System.getProperty ("java.class.path")'가 나에게 내가 원하는 것을 제공한다고 가정한다. 나는 이것을 webapplication으로 시도하고 나는 단지 2 개의 엔트리 만 얻는다. 콘솔 앱이나 테스트를 사용하면 더 많은 것을 얻을 수 있습니다. – sebastian
위의 세바스찬 대답을 사용하여이 코드를 만들었습니다.이 코드는 나를 위해 속임수를 사용했습니다.
classpath=/dd/apache-tomcat-7.0.29/bin/bootstrap.jar:/dd/apache-tomcat-7.0.29/bin/tomcat-juli.jar
c=WebappClassLoader
context: /xxx
delegate: false
repositories:
/WEB-INF/classes/
----------> Parent Classloader:
[email protected]
url: file:/DT/DEV/dev/mko/apache-tomcat-7.0.29/webapps/xxx/WEB-INF/classes/
url: file:/DT/DEV/dev/mko/apache-tomcat-7.0.29/webapps/xxx/WEB-INF/lib/commons-codec.jar
url: file:/DT/DEV/dev/mko/apache-tomcat-7.0.29/webapps/xxx/WEB-INF/lib/commons-fileupload.jar
url: file:/DT/DEV/dev/mko/apache-tomcat-7.0.29/webapps/xxx/WEB-INF/lib/commons-logging-api.jar
url: file:/DT/DEV/dev/mko/apache-tomcat-7.0.29/webapps/xxx/WEB-INF/lib/commons-logging.jar
url: file:/DT/DEV/dev/mko/apache-tomcat-7.0.29/webapps/xxx/WEB-INF/lib/freemarker.jar
url: file:/DT/DEV/dev/mko/apache-tomcat-7.0.29/webapps/xxx/WEB-INF/lib/h2.jar
url: file:/DT/DEV/dev/mko/apache-tomcat-7.0.29/webapps/xxx/WEB-INF/lib/js.jar
url: file:/DT/DEV/dev/mko/apache-tomcat-7.0.29/webapps/xxx/WEB-INF/lib/log4j-1.2.8.jar
유사 : http://stackoverflow.com/questions/3923129/get-a-list-of-resources-from-classpath-directory –