Jenkins Server не может скомпилировать, потому что пространство кучи не может быть зарезервировано - PullRequest
1 голос
/ 23 ноября 2011

У меня большая проблема с моим сервером jenkins: я не могу собрать проект maven, потому что java vm не может запуститься:

Checkout:workspace / /var/lib/jenkins/jobs/SchwarzGoldTool/workspace - hudson.remoting.LocalChannel@b7193fc
Using strategy: Default
Last Built Revision: Revision c2d18fd7a5d7f112163e9440a8e7256a44e32f46 (origin/HEAD, origin/master)
Checkout:workspace / /var/lib/jenkins/jobs/SchwarzGoldTool/workspace - hudson.remoting.LocalChannel@b7193fc
Fetching changes from 1 remote Git repository
Fetching upstream changes from git://.../tsc.git
Seen branch in repository origin/HEAD
Seen branch in repository origin/master
Commencing build of Revision 2b4654302e8222509db5808c9071ec95daf0b495 (origin/HEAD, origin/master)
Checking out Revision 2b4654302e8222509db5808c9071ec95daf0b495 (origin/HEAD, origin/master)
Warning : There are multiple branch changesets here
Parsing POMs
Modules changed, recalculating dependency graph
[SchwarzGoldTool] $ java -Xmx512M -Xms512M -cp /var/lib/jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-agent-1.2.jar:/var/lib/jenkins/tools/Maven_3.0.3/boot/plexus-classworlds-2.4.jar org.jvnet.hudson.maven3.agent.Maven3Main /var/lib/jenkins/tools/Maven_3.0.3 /var/run/jenkins/war/WEB-INF/lib/remoting-2.11.jar /var/lib/jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-1.2.jar 58359
Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.
ERROR: Failed to launch Maven. Exit code = 1
Finished: FAILURE

Я попытался добавить -Xmx и -Xms к виртуальной машине (каквы можете видеть) но это тоже не работает ... у кого-то есть идея, что там происходит?

1 Ответ

0 голосов
/ 24 ноября 2011

Проблема вызвана тем, что Дженкинс не смог зарезервировать достаточно места в куче, чтобы запустить сборку maven.Из того, что вы сказали, кажется, что есть несколько вещей, которые разделяют ваш предел виртуальной машины (я включил оценку памяти, необходимой для запуска каждого процесса)

  • ОС виртуальной машины (~ 200 ~ 300 МБ)
  • Jenkins (~ мин. 256 МБ)
  • Веб-контейнеры (~ 256 ~ 512 МБ)
  • и т. Д.(~ 100 МБ)

Моя оценка памяти довольно консервативна, но, тем не менее, она легко составляет более 1 ГБ, что оставляет Дженкинсу доступную кучу для резервирования менее Xms (512 м), следовательно, не удалось запустить сборку

В идеале вы должны увеличить программный предел на вашей виртуальной машине до более высокого значения.Если это невозможно, мой совет будет уменьшить управление памятью сборки, изменив конфигурацию задания в Jenkins на что-то вроде этого (Xmx512m, Xms128m), чтобы Jenkins мог запустить сборку с только 128-метровой свободной кучей.Но этот параметр может вызвать ошибку нехватки памяти на более поздней стадии, когда сборка требует кучи, которая ниже Xmx, но выше доступной кучи.

Кроме того, вы можете управлять памятью другими процессами, о которых я упоминал выше, или вы можете настроить некоторые настройки виртуальной памяти на вашей виртуальной машине.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...