精简jre步骤
1. 拷贝一个完整版的jre文件夹到D盘
2. 删除jre目录下所有出bin和lib目录的所有文件或目录
3. 打开cmd窗口,设置path路径为空,转到D:/jre/bin目录,运行java –version。正常显示当前Java的版本。
4. 在bin目录中新建一个temp目录,将除java.exe和java.dll外的移到temp目录中
5. 再次运行java –version命令,提示没找到verify.dll。将temp目录中的verify.dll移到bin目录中
6. 再次运行 java –version命令,提示:Could not create the Java virtual machine.错误
7. 根据测试:还要将hpi.dll和zip.dll放到bin目录中
8. 再次运行java –version命令,OK,又出现了版本信息。此时,可以将temp目录移出bin目录中。(放到桌面先)
9. 删除client目录中的除jvm.dll外的文件。转到jre目录,查看bin目录的大小,为2.89MB。但此时lib目录仍有60M有余
10. 转到lib目录,新建一个temp目录,将i386除外的目录都移动到temp目录中,再次运行java –version命令,OK
11. 再新建一个temp2目录,将charsets.jar和rt.jar外的所有文件移动到temp2目录中,再次运行 Java –version命令,OK
12. 将temp2和temp目录移到桌面。此时lib仍有48.7M接近50M。(还得努力)
13. 缩减charsets.jar和rt.jar(使用7z工具可以查看和修改jar文件的内容『直接添加和删除』)。准备做个软件来实现。
14. 缩减原则。运行java -verbose:class -version > temp.java 命令,此时在bin目录下生成了一个temp.java文件,用EditPlus打开,看到没有,要加载的就是那些类了,把不需要的全部删除就是了。
15. 原来charsets.jar没有加载呀。直接删除,再次运行java –version命令,OK
16. 接下来的工作就是裁剪rt.jar了。慢慢来。也可以做个软件来完成。可以下载一个GreenJVMMake.jar来完成。不过有时候好像有些类没加载到。要考虑更新了。
17. 裁剪玩rt.jar后,再次运行java –version ,出现了版本信息。OK
18. 转到D盘查看一下精简的jre才4.47MB。不到5M。OK
19. 最小的jre制作完毕。
附带制作过程图片,可用Picasa来查看,播放模式效果更佳。
Thoams
2010-6-25 15:53