Estoy utilizando el recolector de basura G1 con JDK1.7.0, pero la VM no reconoce la opción G1YoungGenSize. En concreto, cuando corro:Java VM no reconoce -XX: G1YoungGenSize?
java -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1YoungGenSize=512m ...
me sale el siguiente error:
Unrecognized VM option 'G1YoungGenSize=512m'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
También he probado con un signo "+" antes G1YoungGenSize, como parte de la documentación G1 listas de esa manera :
java -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:+G1YoungGenSize=512m ...
Pero me sale el mismo error.
He intentado JDKs más antiguos, incluida la actualización 1.6 a la 21. Parece que G1YoungGenSize se reconoce a través de la actualización 20, y se rompe con 21 y hasta la última versión 1.7 (instantánea del 19 de agosto de 2010).
¿Alguien sabe lo que podría estar causando este error?
¿Podría publicar el resultado de 'java -version'? –
Claro. Funciona con: versión java "1.6.0_20" Java (TM) SE Runtime Environment (compilación 1.6.0_20-b02) Java HotSpot (TM) 64-Bit Server VM (compilación 16.3-b01, modo mixto) pero no funciona con ninguno de estos: java version "1.7.0-ea" Java (TM) sE Runtime Environment (build 1.7.0-ea-B106) Java HotSpot (TM) de 64 bits servidor de VM (build 19.0-b05, modo mixto) y versión java "1.6.0_21" Java (TM) SE Runtime Environment (build 1.6.0_21-b06) Java HotSpot (TM) Server VM (build 17.0 -b16, modo mixto) –
Sin mirar el código fuente, mi suposición es que 'G1YoungGenSize' fue eliminado, quizás temporalmente. Las opciones '-XX' hacen eso. –