[intellij-idea] Intellij 컴파일러에 더 많은 힙 공간을 제공하려면 어떻게해야합니까?

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

내가 무엇을 놓치고 있습니까?



답변

현재 버전 :

Settings( PreferencesMac) | Build, Execution, Deployment| Compiler|
빌드 프로세스 힙 크기 .

이전 버전 :

Settings( PreferencesMac) | Compiler| Java Compiler| 최대 힙 크기 .

컴파일러는 기본적으로 별도의 JVM에서 실행되므로 설정 한 IDEA 힙 설정 idea.vmoptions은 컴파일러에 영향을주지 않습니다.


답변

IntelliJ 2016 이후 위치는 File | 설정 | 빌드, 실행, 배포 | 컴파일러 | 빌드 프로세스 힙 크기 .

여기에 이미지 설명 입력


답변

Ant 빌드에서 비슷한 문제가 발생했습니다 (IDEA GUI에서 직접 시작). 제 경우에는 Ant 작업을 마우스 오른쪽 버튼으로 클릭하고 속성을 선택하고 더 높은 값을 “최대 힙 공간 (Mb) :”및 “최대 스택 공간 (Mb) :”입력 필드로 설정하는 올바른 솔루션이있었습니다.

여기에 이미지 설명 입력


답변

이 문제를 해결하려면 아래 단계를 따르십시오.

1). inteli에서 File> Setting Option으로 이동하여 Vm Option 검색 Importer에 대한 Vm Option 필드에 -Xmx512m 값을 지정합니다.
Intelij 설정 옵션

2). Control Pannel로 이동 View by : Large icons를 선택한 다음 Go to Java로 이동 프롬프트 창이 java control pannel 이라는 이름으로 표시 되고 java Java VM Options 로 이동합니다.

보기 옵션을 선택하십시오.
자바보기 옵션

Java 런타임 환경 설정에서 런타임 매개 변수를 -Xmx1024m 으로 전달 합니다.

삼). 위의 주어진 옵션이 작동하지 않으면 pom.xml의 크기를 변경하십시오.


답변

Intellij 12의 GWT

FWIW, ‘ Build | 프로젝트 ‘를 다시 빌드하십시오 .

이것은 Intellij가 전체 GWT 컴파일을 수행했기 때문에 발생했으며 매우 긴 프로세스이기 때문에 마음에 들지 않았습니다.

Project Structure | ‘아래의 모듈 확인란을 해제하여 GWT 컴파일을 비활성화했습니다. 패싯 | GWT ‘.

또는 해당 위치에 ‘ 컴파일러 최대 힙 크기 ‘설정도 있습니다.


답변

필자의 경우 오류는 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와 관련이 없습니다;이 경우).

테스트가 분기 된 경우 Maven JVM 옵션을 상속하지 않는 새 JVM에서 실행됩니다. 커스텀 메모리 옵션은 pom.xml의 테스트 실행기를 통해 제공되어야합니다. 자세한 내용은 Maven 문서를 참조하세요. IDE와는 거의 관련이 없습니다.


답변

maven 설치 명령을 사용하여 프로젝트를 빌드하는 동안 “java.lang.OutOfMemoryError : Java 힙 공간”오류가 발생했습니다.

메이븐 러너 설정을 변경하여 제거 할 수있었습니다.

Settings| Build, Execution, Deployment| Build Tools| Maven| Runner| VM options-Xmx512m