사용자 도구

사이트 도구


intellij_idea

IntelliJ IDEA

오류시 대응

  • 잦은 코드 업데이트시에 IDE의 인덱싱 데이터와 실제 코드간의 불일치로 코드상에 문제가 없는데도 오류가 발생하는 경우가 간혹 발생한다.
  • File → Invalidate Caches를 실행하여 인덱스를 재생성해본다.
  • 프로젝트디렉토리/out/ 혹은 /classes/ 디렉토리를 완전히 삭제하고 Build → Rebuild Project해 본다.
  • .idea, *.iml 등의 파일을 모두 삭제하고 프로젝트를 다시 import 해본다.
  • JAVA 버전을 검사해본다.
  • IntelliJ 내에서 실행하는 JetGradle 명령은 JAVA_HOME 환경 변수의 영향을 받으므로 이 값이 정확히 설정돼 있는지 검사해 본다.
  • 가끔씩 웹 프로젝트가 아닌데 웹 프로젝트 Facet으로 설정되거나 엉뚱한 파일을 Deployment Descriptor로 잡는 경우가 발생하여 오류가 발생한다. Project structure → Facets/Artifacts에서 웹 프로젝트 관련 Facet 설정이 올바른지 항상 확인한다.
  • 웹 프로젝트 Run Configuration에서 해당 실행 설정의 Deployment에서 Artifact를 삭제했다 다시 넣는다. Artifact 이름이 같더라도 프로젝트 리프레시후에 다른 아티팩트를 가리키는 현상이 발생한다.
  • Osmorc 플러그인이 활성화 돼 있을 경우 이상 증상을 보이기도 하였는데, 내가 설정을 뭔가 잘못한 듯.
  • 특정 클래스가 분명히 아무런 문제가 없는데도 클래스를 찾을 수 없다(class not found)는 오류가 발생한다면 Settings → Build.. → Compiler → Excludes 에 우연히 추가 됐는지 확인한다.

Debug 모드에서 성능 저하

  • Debug 모드에서 코드의 Line이 아닌 메소드 선언부에 Break Point를 걸면 엄청난 성능 저하가 발생한다.
  • 메소드 선언부 Break Point는 피하라.

Gradle 연동

  • IntelliJ IDEA 기본 Gradle 플러그인이 뛰어난 편이라서 Gradle의 idea 플러그인을 사용하지 않아도 된다.
  • 현재 GRADLE-2198 Java Source Level을 인식하지 못하는 버그가 있는데, 이는 Gradle쪽 버그이다.

Windows Cygwin

  • Cygwin 환경의 git, bash 등을 사용하려면 C:\cygwin64\bin 처럼 cygwin의 bin 디렉토리를 Windows PATH에 추가해 둬야 한다.

Cygwin Bash Terminal

JetBrains annotation 제거

@NotNull 등 리팩토링시 jetbrains annotation이 붙는 현상을 없애고 싶으면 프로젝트 의존성에서 annotations.jar가 들어갔는지 확인해본다. Gradle 에서는 다음과 같이 제거한다.

configurations.all {
    exclude group: 'org.kohsuke.jetbrains', module: 'annotations'
}

참조문서

intellij_idea.txt · 마지막으로 수정됨: 2017/02/24 15:10 저자 kwon37xi