Предупреждение VM на 64-битном сервере Java HotSpot (TM): игнорирование опции MaxPermSize

При создании проекта Java 8 с Maven...

mvn clean package

... Я получаю это сообщение:

Java HotSpot (TM) 64-разрядное предупреждение сервера VM: игнорирование опции MaxPermSize = 128 м; поддержка удалена в 8.0

Как удалить это сообщение?

Ответ 1

Руководство по совместимости для JDK 8 говорит, что в Java 8 флаг командной строки MaxPermSize был удален. Причина в том, что постоянное поколение было удалено из кучи горячих точек и было перемещено в исходную память. Поэтому, чтобы удалить это сообщение MAVEN_OPTS Пользовательская переменная среды:

Java 7

MAVEN_OPTS -Xmx512m -XX:MaxPermSize=128m

Java 8

MAVEN_OPTS -Xmx512m

Ответ 2

JDK 8 HotSpot JVM теперь использует встроенную память для представления метаданных класса и называется Metaspace.

Постоянное поколение было удалено. PermSize и MaxPermSize игнорируются и выдается предупреждение, если они присутствуют в командной строке.

Ответ 3

В JBoss EAP 6.4 щелкните правой кнопкой мыши на сервере и откройте конфигурацию запуска в соответствии с аргументом VM, вы найдете

{-Dprogram.name=JBossTools: jboss-eap" -server -Xms1024m -Xmx1024m -XX:MaxPermSize=256m}

обновите его до

{-Dprogram.name=JBossTools: JBoss 6.4" -server -Xms512m -Xmx512m}

это решит вашу проблему.

Ответ 4

-XX: MaxPermSize = размер Устанавливает максимальный размер пространства постоянной генерации (в байтах). Этот параметр был устаревшим в JDK 8 и заменен параметром -XX: MaxMetaspaceSize.

-XX: PermSize = размер Устанавливает пространство (в байтах), выделенное для постоянного поколения, которое запускает сборку мусора, если оно превышено. Этот параметр был устаревшим без JDK 8 и заменен параметром -XX: MetaspaceSize.

Ответ 5

Я получил подобное сообщение при запуске командной строки mvn (версия 3.3.3) в Linux с Java 8. Открыв maven script/$MAVEN-HOME/bin/mvn, найдите следующую строку

MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"

Где $MAVEN_PROJECTBASEDIR по умолчанию является вашим домашним каталогом. Итак, вы можете посмотреть два места: сначала файл $MAVEN_PROJECTBASEDIR/.mvn/jvm.config, если он существует. Во-вторых, посмотрите файлы, возможно, настройте переменную окружения MAVEN_OPTS. Кандидатными файлами являются .bashrc,.bash_profile,.profile и те файлы, которые были включены в них, например /etc/profile,/etc/ bash.bashrc

Я нашел

export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=256m"

в .bashrc в моей системе, измените его на

export MAVEN_OPTS="-Xmx512m"

проблема решена

Ответ 6

Чтобы решить эту проблему, мы просто установили установленный путь JDK в

standalone.conf

который находится в папке bin JBoss\Wildfly Server. Чтобы решить эту проблему, мы делаем следующие шаги:

  • Откройте файл standlone.conf, который под папкой JBoss_or_wildfly\bin
  • Внутри этого файла найдите текст #JAVA_HOME.
  • Удалите символ # и установите установленный путь JDK как JAVA_HOME = "C:\Program Files\Java\jdk1.8.0_65" Надеюсь, это решит вашу проблему Благодаря

Ответ 7

Для пользователей Eclipse...

Нажмите "Выполнить" → "Выполнить конфигурацию" → "-" → "Альтернативный JRE" для версии 1.6 или 1.7