0
我使用JavaCompiler創建一個動態類。這個類實現了一個給定的接口。對於JavaCompiler,我可以創建一個正確的類路徑,以便編譯器可以編譯我的類。
SecureClassLoader找不到依賴接口
//creating the classpath from parent application to be same as the runtime's
ClassLoader dummyc=getClass().getClassLoader();
URLClassLoader urlClassLoader=(URLClassLoader)dummyc;
URL[] urls=urlClassLoader.getURLs();
String classpath = "";
for (URL i : urls) {
classpath += ";" + i.getPath().substring(1);
}
我使用化名的類加載器:
return new SecureClassLoader() {
@Override
protected Class<?> findClass(String name) throws ClassNotFoundException {
byte[] b = javaClassObject.getBytes();
return super.defineClass(name, javaClassObject.getBytes(), 0, b.length);
}
};
加載編譯的類,但是當我打電話loadClass方法我得到這個錯誤: NoClassDefFoundError的:refac/IBewertungsAlgorithmus(錯名:refac/MyClass)
是否可以爲類加載器的編譯器任務設置相同的類路徑?