[英]Android - Load external .jar at runtime
我想在運行時加載外部庫。
來源如下:
import java.lang.*;
import java.net.*;
import java.io.*;
public class Main {
public static void main (String args[]) throws Exception {
System.out.println("Load support library");
File file = new File("/sdcard/lib/android-support-v4.jar");
URL url = file.toURI().toURL();
URL[] urls = {url};
URLClassLoader cl = new URLClassLoader(urls);
Class clazz = cl.loadClass("android.support.v4.view.ViewCompat");
}
}
該庫是Google的支持庫。 它位於“ /sdcard/lib/android-support-v4.jar”。
我想獲取“ android.support.v4.view.ViewCompat”類,但源始終拋出ClassNotFoundException。
JCL類加載器框架如何? 用法示例:
JarClassLoader jcl = new JarClassLoader();
jcl.add("myjar.jar"); //Load jar file
jcl.add(new URL("http://myserver.com/myjar.jar")); //Load jar from a URL
jcl.add(new FileInputStream("myotherjar.jar")); //Load jar file from stream
jcl.add("myclassfolder/"); //Load class folder
jcl.add("myjarlib/"); //Recursively load all jar files in the folder/sub-folder(s)
JclObjectFactory factory = JclObjectFactory.getInstance();
//Create object of loaded class
Object obj = factory.create(jcl,"mypackage.MyClass");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.