String CompilePath = "abc.java";
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
String classpath = System.getProperty("java.class.path");
System.setProperty("java.class.path", classpath + ";" + LocalMachine.home + "WebContent/WEB-INF/lib");
int result = compiler.run(null, null, null, CompilePath);
위의 실행은 벌금을 컴파일에 필요한 모든 jars
이후 JUnit 테스트로 실행될 때 abc.java
파일. 그러나 동일한 코드가 서버로 실행될 때 필요한 jar
파일을 찾지 못합니다. System.getProperty("java.class.path")
의 출력은 E:\apache-tomcat-7.0.4\bin\bootstrap.jar;E:\apache-tomcat-7.0.4\bin\tomcat-juli.jar;C:\Program Files\Java\jdk1.6.0_21\lib\tools.jar
"lib에 WEB-INF /"를 표시하지 않습니다은 System.getProperty ("java.class.path를")와 포함 항아리는
입니다. 따라서 제 질문은 컴파일러가 WEB-INF/lib 디렉토리에서 jar 파일을 참조하도록 만드는 방법입니까?
어떻게 앱을 패키징 (WAR 생성)하고 있습니까? – CoolBeans