Ошибка нехватки памяти во время компиляции Java 6.0 - PullRequest
2 голосов
/ 22 сентября 2009

Я знаю, как использовать -Xmx -Xms во время выполнения, есть ли способ попросить компилятор выделить больше оперативной памяти. У меня есть 2 концерта на моем компьютере. Я не использую IDE просто текстовую панель. Я пытаюсь создать BigInteger с 10 000 000 цифр и выполнить операции на нем. Я попытался создать StringBuffer и sureCapacity (10000000), и он не будет компилироваться. Есть ли класс, который я могу использовать, чтобы сказать компилятору, что мне нужно больше оперативной памяти перед компиляцией или во время компиляции? Я читал о методах RunTime и собираюсь продолжать умножать BigInteger и наблюдать за кучей. Я попытался встроить строку в код "1000000" + и т. Д. 10 000 000 цифр, которые тоже не будут компилироваться.

1 Ответ

6 голосов
/ 22 сентября 2009

Параметры памяти времени выполнения для javac не указываются с использованием простого флага -X. Вместо этого используйте флаг -J , как показано в следующем примере, где память запуска зарезервирована для 128M.

$javac -J-Xmx128M FooBar.java

Эта опция, хотя и является нестандартной, доступна как в Solaris, так и в Linux и Windows. Не уверен насчет Mac.

...