Я использую сборщик мусора G1 с JDK1.7.0, но VM не распознает вариант G1YoungGenSize. В частности, когда я бегу:Java VM не распознает -XX: G1YoungGenSize?
java -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1YoungGenSize=512m ...
Я получаю следующее сообщение об ошибке:
Unrecognized VM option 'G1YoungGenSize=512m'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
Я также пробовал со знаком «+» перед G1YoungGenSize, так как некоторые из документации G1 перечисляет его таким образом :
java -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:+G1YoungGenSize=512m ...
Но я получаю такую же ошибку.
Я пробовал старые JDK, в том числе версии 1.6 с 18 по 21. Кажется, что G1YoungGenSize распознается через обновление 20 и разрывается с 21 и до последней версии 1.7 (моментальный снимок от 19 августа 2010 г.).
Кто-нибудь знает, что может вызвать эту ошибку?
Не могли бы вы вывести результат «java -version»? –
Несомненно. Он работает с: java-версия «1.6.0_20» Рабочая среда Java (TM) SE (сборка 1.6.0_20-b02) 64-разрядная серверная виртуальная машина Java HotSpot TM (сборка 16.3-b01, смешанный режим) Но это не работает ни с одним из них: ява версия "1.7.0-еа" Java (TM) SE Runtime Environment (сборка 1.7.0-еа-B106) Java HotSpot (TM) 64-Bit Сервер VM (сборка 19.0-B05, смешанный режим) и ява версии "1.6.0_21" Java (TM) SE Runtime Environment (строительство 1.6.0_21-b06) Java HotSpot (TM) сервер VM (сборка 17.0 -b16, смешанный режим) –
Не смотря на исходный код, я предполагаю, что 'G1YoungGenSize' был удален, возможно, временно. Параметры '-XX' делают это. –