Если у вас есть ошибки выделения памяти, связанные с пространством «permGen», это означает, что вы работаете с Java 7 или ниже. Так что, как замечание: если вы используете Java 8 или выше, вы больше не должны видеть эту ошибку, так как это пространство больше не существует само по себе и ограничено только доступной собственной памятью.
Опция JVM для управления пространством PermGen: XX:MaxPermSize
. Таким образом, вы должны добавить в JVM при запуске модульных тестов этот аргумент командной строки: -XX:MaxPermSize=256m
.
Переменная environement ANT_OPTS
настроит JVM, используемую самим Ant. Вы должны использовать эту переменную environement, если модульные тесты не запускаются как разветвленные.
Если вы запускаете свои модульные тесты в JVM, разветвленной Ant, то вы должны указать Ant запустить задачу Junit с некоторыми дополнительными аргументами JVM. ,Параметр, который вам нужно использовать: jvmarg
.
См. Официальную документацию Ant о задаче: https://ant.apache.org/manual/Tasks/junit.html
Итак, вот фрагмент XML для установки правильного свойства:
<junit fork="yes">
<jvmarg value="-XX:MaxPermSize=256m" />
</junit>