我正在将一个JAR上传到appengine blobstore,然后尝试使用该jar加载一个类。
jarURL = new URL("http://giffycrm.appspot.com/serve?blob-key="+blobKey);
System.err.println("jarURL : "+jarURL);
ClassLoader loader = URLClassLoader.newInstance(
new URL[] { jarURL },
//getClass().getClassLoader()
JarUtils.class.getClassLoader()
);
System.err.println("ClassLoader : "+loader);
Class<?> clazz = null;
try {
//clazz = Class.forName(className, true, loader);
clazz = loader.loadClass(className);
System.err.println("clazz : "+clazz);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
Object o = clazz.newInstance();
System.err.println("Object create : "+o);
Method m = clazz.getMethod(methodName, String.class);
System.err.println("Method Called : "+m.getName());
String returnVal = (String) m.invoke(o, "jude");
System.err.println("return value : "+returnVal);
该行未在此行加载:clazz = loader.loadClass(className);
任何指针都会有所帮助。