Задание Jenkins с OutOfMemoryError: пространство кучи Java при создании отчета Checkmarx

Мой Jenkins работает в экземпляре сервера Ubuntu. По завершении, когда создается отчет Checkmarx, я получаю ошибку Java heap space, как показано на снимке экрана:

Jenkinks Java Heap Space Error

Может ли кто-нибудь помочь мне, как увеличить пространство кучи Java в Checkmarx?

Чтобы прочитать статью Atlassian KB "Scan Failed with Java Heap Space Exception" учетная запись кажется необходимой.


person Niranga Sandaruwan    schedule 24.07.2017    source источник
comment
java.lang.OutOfMemoryError: Пространство кучи означает, что вам необходимо увеличить объем кучи, выделенный для Jenkins. Чтобы добавить больше пространства кучи Java, увеличьте значение параметра Java -Xmx Попробуйте установить для этого параметра значение 1 ГБ (1048 МБ) и перезапустить Дженкинса   -  person Manish Sahni    schedule 24.07.2017
comment
wiki.jenkins.io/display/JENKINS/   -  person Yuri G.    schedule 24.07.2017


Ответы (1)


Подробнее о том, что такое OutOfMemoryError, читайте здесь. Сам Jenkins запускается как процесс Java, и если ваша работа Jenkins также является процессом Java, оба они могут вызвать ошибку нехватки памяти.

Глядя на журнал, похоже, что ваша работа работает с ошибкой. Так что читайте также о том, как установить Параметр JVM в Jenkins глобально для каждого задания?.

Изменить: если ваш процесс Jenkins сам запускает OutOfMemoryError, обратитесь к Увеличить размер кучи в Java о том, как увеличить размер кучи JVM для процессов Java.

Обычно -Xmx2048M используется для указания максимального размера кучи для java-процесса, в моем примере я устанавливаю его на 2048 МБ. В зависимости от вашей конфигурации вы указываете это значение по-разному.

person user156327    schedule 24.07.2017
comment
Я хотел обработать эту ошибку на стороне checkmarx. Я нашел этот пост checkmarx.atlassian.net/wiki/display/KC/ - person Niranga Sandaruwan; 24.07.2017
comment
@NirangaSandaruwan, круто, как я уже сказал, если это в конечном итоге происходит из-за того, что процессу Java не хватает памяти. так как в вашем случае вы сканируете файлы журналов, что является операцией с интенсивным использованием памяти, поскольку она создаст попытку создания буфера в памяти. - person user156327; 24.07.2017