我有一個Scala數據處理工具,它與java.lang.OutOfMemoryError
例外失敗。該工具需要通過一個大型數據文件(我正在使用的文件大小超過700MB)進行兩次傳遞,因此如果整個事件可以存儲在內存中將會很方便。增加Scala的JVM堆大小?
我使用「scala」runner從命令行或Bash腳本運行該工具。如何爲此增加JVM堆大小?我試過傳球-Xmx1024m
,但它不承認這個說法。我正在使用每晚構建的Scala 2.8.0(r18678)。
我有一個Scala數據處理工具,它與java.lang.OutOfMemoryError
例外失敗。該工具需要通過一個大型數據文件(我正在使用的文件大小超過700MB)進行兩次傳遞,因此如果整個事件可以存儲在內存中將會很方便。增加Scala的JVM堆大小?
我使用「scala」runner從命令行或Bash腳本運行該工具。如何爲此增加JVM堆大小?我試過傳球-Xmx1024m
,但它不承認這個說法。我正在使用每晚構建的Scala 2.8.0(r18678)。
JAVA_OPTS環境變量用於指定傳遞給java命令的選項。有關詳細信息,請參閱Scala manpage。
作爲一種破解,您可以編輯scala/bin/scala
文件來編輯java
命令的參數。不漂亮。
編輯JAVA_OPTS
。
根據Joe的建議,我查看了scala程序,該程序是一個Bash腳本,它使用各種Scala特定參數調用java。它允許通過JAVA_OPTS環境變量將額外的命令行參數傳遞給Java。因此,您可以像這樣增加堆大小:
JAVA_OPTS="-Xmx2g" scala classname arguments...
這......可以工作。 – 2009-09-17 21:21:34
是的,但我在等待別人回答。我也想知道... – Joe 2009-09-17 21:32:07