Я знаю, что есть тысячи вопросов об этой ошибке, но я не нашел решения своей проблемы. У меня на сервере развернуто три веб-приложения. Эти приложения созданы с использованием java, spring framework и hibenate. На моем сервере есть tomcat6 и opendjdk 1.7. Как я уже сказал, после использования моих приложений в течение некоторого времени появляется пространство OutOfMemoryError: Permgen. Во всех решениях, которые я прочитал, предлагается изменить параметр MaxPermSize с помощью команды:
JAVA_OPTS="-XX:PermSize=256m -XX:MaxPermSize=512m"
or
java -XX:PermSize=256m -XX:MaxPermSize=512m
Я попытался поместить первую команду в файл tomcat6.conf моего сервера, а в качестве файла setenv.sh я попробовал вторую прямо в командной строке, но ни одно из этих решений не работает. Когда я выполняю команду:
java -XX:+PrintFlagsFinal -version | grep -iE 'HeapSize|PermSize|ThreadStackSize'
Значения моего PermGen Space были такими же, прежде чем я попытался его изменить. Я разговаривал с администратором моего сервера, и он сказал, что эти значения не могут измениться, потому что они основаны на процентах от общей памяти системы, и единственный способ их изменения - увеличить память системы. Я смущен, потому что мой администратор говорит одно, а решения, которые я прочитал, говорят другое. Может это значение поменять? Как я могу увеличить стоимость PermGen?