Как я могу дать компилятору Intellij больше места в куче? - PullRequest
92 голосов
/ 21 декабря 2011

Когда я делаю проект Intellij, я получаю следующее сообщение об ошибке из памяти.

Я уже увеличил размер кучи в idea.vmoptions:

-Xms128m
-Xmx2048m
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=64m
-ea

Но я все еще получаю эту ошибку:

Information:The system is out of resources.
Information:Consult the following stack trace for details.
Information:java.lang.OutOfMemoryError: Java heap space
Information:    at com.sun.tools.javac.util.Position$LineMapImpl.build(Position.java:139)
Information:    at com.sun.tools.javac.util.Position.makeLineMap(Position.java:63)
Information:    at com.sun.tools.javac.parser.Scanner.getLineMap(Scanner.java:1105)
Information:    at com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:512)
Information:    at com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:550)
Information:    at com.sun.tools.javac.main.JavaCompiler.parseFiles(JavaCompiler.java:804)
Information:    at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:727)
Information:    at com.sun.tools.javac.main.Main.compile(Main.java:353)
Information:    at com.sun.tools.javac.main.Main.compile(Main.java:279)
Information:    at com.sun.tools.javac.main.Main.compile(Main.java:270)
Information:    at com.sun.tools.javac.Main.compile(Main.java:69)
Information:    at com.sun.tools.javac.Main.main(Main.java:54)
Information:    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Information:    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
Information:    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
Information:    at java.lang.reflect.Method.invoke(Method.java:597)
Information:    at com.intellij.rt.compiler.JavacRunner.main(JavacRunner.java:71)
Information:Compilation completed with 1 error and 0 warnings
Information:1 error
Information:0 warnings
Error:Compiler internal error. Process terminated with exit code 3

Чего мне не хватает?

Ответы [ 7 ]

131 голосов
/ 21 декабря 2011

Текущая версия:

Settings (Preferences на Mac) | Build, Execution, Deployment | Compiler | Размер кучи процесса сборки .

Старые версии:

Settings (Preferences на Mac) | Compiler | Java Compiler | Максимальный размер кучи .

Компилятор по умолчанию работает в отдельной JVM, поэтому настройки кучи IDEA, заданные в idea.vmoptions, не влияют на компилятор.

81 голосов
/ 09 апреля 2016

Начиная с IntelliJ 2016, местоположение Файл | Настройки | Сборка, выполнение, развертывание | Компилятор | Размер кучи процесса сборки .

enter image description here

3 голосов
/ 10 января 2013

GWT в Intellij 12

FWIW, во время ' я получал аналогичную ошибку с моим приложением GWT Перестроить проект '.

Это было вызвано тем, что Intellij сделал полную GWT-компиляцию, которая мне не понравилась, потому что это также очень длительный процесс.

Я отключил компиляцию GWT, сняв флажки модуля под ' Структура проекта | Грани | GWT .

В качестве альтернативы в этом месте также есть настройка Максимальный размер кучи компилятора .

2 голосов
/ 21 июля 2018

Чтобы решить эту проблему, выполните следующие шаги -

1).В Inteli перейдите в File> Setting Option и найдите Vm Option. В поле Vm Option для Importer укажите значение -Xmx512m. Параметры настройки Intelij

2).Перейти к панели управления Выберите Просмотр по: Большим значкам, затем Перейти к Java Появится окно с одним приглашением с именем Панель управления Java , затем перейдите к Java Параметры Java VM

выберитевариант просмотра. параметры просмотра Java

В среде выполнения Java. Настройка прохода Время выполнения Параметры в виде -Xmx1024m .

3).Если указанные выше параметры не работают, измените размер pom.xml

2 голосов
/ 12 апреля 2017

У меня была похожая проблема со сборкой Ant (запущена вручную из графического интерфейса IDEA). В моем случае было правильное решение - щелкнуть правой кнопкой мыши задачу Ant, выбрать свойства и установить более высокое значение для полей ввода «Максимальное пространство кучи (Мб):» и «Максимальное пространство стека (Мб):».

enter image description here

0 голосов
/ 28 октября 2014

есть

idea64.exe

стартер в

IntelliJ IDEA 13.1.5 \ bin

чтобы вы могли адресовать больше места.

0 голосов
/ 10 февраля 2014

В моем случае ошибка была вызвана нехваткой памяти, выделенной для «тестового» жизненного цикла maven. Это было исправлено добавлением <argLine>-Xms3512m -Xmx3512m</argLine> к:

<pluginManagement>
  <plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.16</version>
        <configuration>
            <argLine>-Xms3512m -Xmx3512m</argLine>

Спасибо @crazycoder за указание на это (а также за то, что он не имеет отношения к IntelliJ; в данном случае).

Если ваши тесты разветвлены, они запускаются в новой JVM, которая не наследует параметры Maven JVM. Пользовательские параметры памяти должны быть предоставлены через тестовый прогон в pom.xml, подробности см. В документации Maven, он очень мало связан с IDE.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...