Как увеличить максимальный размер кучи для процесса javac в Borland JBuilder 2005/2006
-
01-07-2019 - |
Вопрос
В большинстве современных IDE есть параметр, который вы можете установить, чтобы гарантировать, что javac получит достаточно памяти кучи для выполнения своей компиляции.По причинам, в которые здесь не стоит вдаваться, мы пока привязаны к JBuilder 2005/2006, и, похоже, объем исходного кода превысил то, что может быть обработано javac.
Пожалуйста, оставьте ответ специфичным для JBuilder 2005/2006 javac (мы не можем перенести его прямо сейчас, а компилятор Borland Make некорректно поддерживает Java 1.6)
Я понимаю, как и какие параметры следует если они будут переданы в javac, проблема в том, что IDE, похоже, не позволяет устанавливать их где бы то ни было.Большая часть настроек скрыта в файлах Jbuilder Install \bin * .config, я чувствую, что ответ может быть где-то там, но не нашел его.
Решение
нашли ли вы хорошее решение для этой проблемы?
У меня такая же проблема, и единственное решение, которое я нашел, заключается в следующем:Переменная окружения JAVA_TOOL_OPTIONS может использоваться для предоставления параметров для JVM.
http://java.sun.com/javase/6/docs/platform/jvmti/jvmti.html#tooloptions
Я создал командный файл "JBuilderw.bat" со следующим содержимым:
установите JAVA_TOOL_OPTIONS=-Xmx256m
JBuilderw.exe
Каждый раз, когда я запускаю JBuilder, используя этот пакетный файл env.var.JAVA_TOOL_OPTIONS будут установлены и javac.exe получат настройку.JVM выводит в конце следующее сообщение:"Подобрал JAVA_TOOL_OPTIONS:-Xmx256m"
Недостаток:все виртуальные машины, запущенные JBuilder, получат этот параметр.:(
Спасибо, Джей Би
Другие советы
Взгляните на http://javahowto.blogspot.com/2006/06/fix-javac-java-lang-outofmemoryerror.html
Аргументы, которые вам нужно передать в javac JBuilder, - это "-J-Xms256m -J-Xmx256m".Замените 256m на все, что подходит в вашем случае.Кроме того, уберите кавычки.
Это должно работать для java 1.4, java 1.5 и forward.
BR, ~A
"Я понимаю, как и какие параметры должны быть переданы в javac, проблема в том, что IDE, похоже, не позволяет устанавливать их где бы то ни было".
Теперь я понял, что вы знаете, как передать правильные аргументы, НО не знаете, куда / как передать эти аргументы :-(
Как насчет этого :Можете ли вы определить , где находится каталог JAVA_HOME / bin , который использует borland?Если да, то вы можете переименовать javac.exe (сказать javacnew.exe) с помощью javac.bat, который, в свою очередь, вызовет javacnew.exe (а также передаст необходимые аргументы)?
Я не знаю, поможет ли это, поскольку я не использую Borland, но в Eclipse это параметр, который вы привязываете к программе, которую собираетесь запустить.Каждая программа, которую вы запускаете в IDE, имеет специфичную для нее конфигурацию, включая аргументы виртуальной машины.Есть ли что-то подобное?
У вас есть файл jdk.config, расположенный в JBuilder2005/bin/?
Вы должны иметь возможность изменять параметры виртуальной машины в этом файле следующим образом:
vmparam -Xms256m
vmparam -Xmx256m
Дайте мне знать, если это сработает, я нашел это на Страница говорим о редактировании связанных настроек в JBuilder 2005.
Редактировать jbuilder.config
файл.Поместите в комментарий эти две строки:
vmmemmax 75%
vmmemmin 32m
должны ли они быть <1Gb and with a >
1 ГБ ПК, 75% - это слишком много?