Pregunta

Tengo una herramienta de procesamiento de datos Scala que falla con una excepción java.lang.OutOfMemoryError . La herramienta necesita hacer un par de pases sobre un archivo de datos grande (en el que estoy trabajando tiene más de 700 MB), por lo que sería conveniente si todo se pudiera almacenar en la memoria.

Ejecuto la herramienta desde la línea de comandos o desde una secuencia de comandos Bash usando la " scala " corredor. ¿Cómo aumento el tamaño del montón JVM para esto? Intenté pasar -Xmx1024m , pero no reconoce este argumento. Estoy usando una versión nocturna de Scala 2.8.0 (r18678).

¿Fue útil?

Solución

La variable de entorno JAVA_OPTS se usa para especificar las opciones pasadas al comando java. Consulte la página de manual de Scala para obtener más información.

Otros consejos

Puede pasar opciones a la JVM a través de -J. Por ejemplo,

scala -J-Xmx2g ...

Basado en la sugerencia de Joe, miré el programa scala, que es un script Bash que llama a Java con varios argumentos específicos de Scala. Permite pasar argumentos de línea de comando adicionales a Java a través de la variable de entorno JAVA_OPTS. Para que pueda aumentar el tamaño del montón de esta manera:

JAVA_OPTS="-Xmx2g" scala classname arguments...

Editar JAVA_OPTS .

Como pirateo, puede editar el archivo scala / bin / scala para editar los parámetros para el comando java . No es bonito.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top