这是动态加载类的常用方法:
try {
File file = new File(JAR_FILE);
String classToLoad = "com.mycompany.MyClass";
URL jarUrl = new URL("jar", "","file:" + file.getAbsolutePath()+"!/");
URLClassLoader loader = new URLClassLoader(new URL[] {jarUrl}, Thread.currentThread().getContextClassLoader());
Class c = loader.loadClass(classToLoad);
} catch (Exception e) {
e.printStackTrace();
}
但是,我需要一种方法:
- 我们不需要创建一个文件(因为我试图处理的 jar 在获取时是一个字节数组 [])
- 或者我们不需要从 byte[] 数组创建临时文件(作为 AppEngine,我使用的平台不允许创建临时文件)