Увеличить размер кучи JVM для Scala?
-
10-07-2019 - |
Вопрос
У меня есть инструмент обработки данных Scala, который не работает с исключением java.lang.OutOfMemoryError
. Утилита должна сделать пару проходов по большому файлу данных (над которым я работаю, его размер превышает 700 МБ), поэтому было бы удобно, если бы все это можно было сохранить в памяти.
Я запускаю инструмент из командной строки или из сценария Bash, используя " scala " бегун. Как мне увеличить размер кучи JVM для этого? Я попытался передать -Xmx1024m
, но он не распознает этот аргумент. Я использую ночную сборку Scala 2.8.0 (r18678).
Решение
Переменная среды JAVA_OPTS используется для указания параметров, передаваемых команде java. Подробнее см. На справочной странице Scala . р>
Другие советы
Вы можете передавать опции в JVM через -J. Например.
scala -J-Xmx2g ...
Основываясь на предложении Джо, я посмотрел на программу scala, которая представляет собой скрипт Bash, который вызывает java с различными аргументами, специфичными для Scala. Это позволяет передавать дополнительные аргументы командной строки в Java через переменную среды JAVA_OPTS. Таким образом, вы можете увеличить размер кучи следующим образом:
JAVA_OPTS="-Xmx2g" scala classname arguments...
Изменить JAVA_OPTS
.
В качестве хака вы можете отредактировать файл scala / bin / scala
для редактирования параметров команды java
. Не очень.