JAVA代码混淆-yguard ant配置

1 java classloader加载原理

java程序入口是java.exe
这部分内容可参考
http://lz12366.iteye.com/blog/740470

不同实现版本的jvm.dll必然存在一个名为:JNI_CreateJavaVM的导出函数, 
java.exe正是通过调用该函数获得JNIEnv调用接口来装载执行class类的。这个 
函数也是我们下一步研究java vm实作技巧的研究出发点。




jvm classLoader architecture:

  1. Bootstrap ClassLoader/启动类加载器 
    主要负责jdk_home/lib目录下的核心 api 或 -Xbootclasspath 选项指定的jar包装入工作。
  2. Extension ClassLoader/扩展类加载器 
    主要负责jdk_home/lib/ext目录下的jar包或 -Djava.ext.dirs 指定目录下的jar包装入工作。
  3. System ClassLoader/系统类加载器 
    主要负责java -classpath/-Djava.class.path所指的目录下的类与jar包装入工作。
  4. User Custom ClassLoader/用户自定义类加载器(java.lang.ClassLoader的子类) 
    在程序运行期间, 通过java.lang.ClassLoader的子类动态加载class文件, 体现java动态实时类装入特性。

2 yguard 配置
http://wallboy.iteye.com/blog/368669

你可能感兴趣的:(JAVA代码混淆-yguard ant配置)