TLDR: jruby -J-Xmx1024m script_you_want_to_run.rb
Как уже упоминалось, ваша программа пытается выделить больше памяти, чем максимальный размер, который JVM может выделить.
Также, как уже упоминали другие, вы можете настроить Java, чтобы разрешить выделение большего объема памяти, сообщив об этом через командную строку с аргументом -Xmx1024m (в качестве примера).
-Xmx - это аргумент для максимальной памяти, а 1024m - это объем памяти (последний мегабайт для мегабайта). Я думаю, что JRuby запускает JVM с максимальной памятью, уже установленной на 512 м, так что вы, вероятно, захотите подняться выше.
Чтобы отправить аргументы JVM из командной строки с помощью jruby, вам необходимо добавить -J перед аргументом, чтобы ваша командная строка выглядела так:
jruby -J-Xmx1024m script_you_want_to_run.rb
Я также согласен с мнением об утечке памяти: если вы на самом деле не имеете дело с кучей объектов с ожиданием того, что вы можете увидеть эту ошибку, то вам может потребоваться возможность непредвиденного побочные эффекты.