最近在自己的开发环境eclipse运行java -Xms20M -Xmx20M -Xmn10M -verbose:gc -XX:+PrintGCDetails -XX:+UseParallelGC 发现,jvm没有起来,报错:
Must use the serial GC in the Dynamic Code Evolution VM
想起以前在jdk6升级过dcevm,所以只能删除-XX:+UseParallelGC 选项。
附:
什么是dcevm
dcevm(DynamicCode Evolution Virtual Machine)是java hostspot的补丁(严格上来说是修改),允许(并非无限制)在运行环境下修改加载的类文件.当前虚拟机只允许修改方法体(method bodies),decvm,可以增加 删除类属性、方法,甚至改变一个类的父类
参考:
-
http://www.oldratlee.com/383/tech/java/dce-hot-swap-usage-and-problem-solution.html#more-383
- DCE官方网址 http://ssw.jku.at/dcevm/
- hotswap 用户手册 – 淘宝JAVA中间件团队博客 http://rdc.taobao.com/team/jm/archives/641
- hostswap dcevm – 使用介绍http://www.cnblogs.com/redcreen/archive/2011/06/03/2071169.html
- Dynamic Code Evolution for Java dcevm 原理http://www.cnblogs.com/redcreen/archive/2011/06/14/2080718.html
- Java HotSpot dcevm 在debug模式下的热部署 http://sjsky.iteye.com/blog/907606
- 深入 Java 调试体系 http://www.ibm.com/developerworks/cn/java/j-lo-jpda1/
- Java Platform Debugger Architecturehttp://java.sun.com/javase/technologies/core/toolsapis/jpda/