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