System.loadLibrary解析
System.loadLibrary和load的区别
1 | loadLibrary只需要传入native-lib |
首先从java层 java/lang/System.java
1 | System.loadLibrary("libnative-lib.so"); |
1 | public static void loadLibrary(String libname) { |
/libcore/ojluni/src/main/java/java/lang/Runtime.java
1 |
|
doLoad
1 | 1070 private String doLoad(String name, ClassLoader loader) { |
doLoad 对应的native方法 JVM_NativeLoad
/art/runtime/openjdkjvm/OpenjdkJvm.cc
1 |
|
/art/runtime/java_vm_ext.cc
LoadNativeLibrary
1 | bool JavaVMExt::LoadNativeLibrary(JNIEnv* env, |
1 | LoadNativeLibrary主要任务是 |