IntelliJ IDEA

최근 수정 시각:

파일:나무위키프로젝트.png
이 문서는 나무위키 컴퓨터 프로젝트에서 다루는 문서입니다.
해당 프로젝트 문서를 방문하여 도움이 필요한 문서에 기여하여 주세요!

파일:intellij.png

공식 사이트

1. 개요2. 에디션과 라이선스3. 기타4. 공식 지원 언어5. 시스템 요구 사항6. 가이드7. 관련 항목8. 외부 링크

1. 개요[편집]

체코 프라하에 본사를 둔 JetBrains(젯브레인즈) 사[1]에서 개발한 통합 개발 환경. 이클립스보다 여러 면에서 뛰어나다고 평가되며[2], 2001년 첫 출시 때부터 편리한 코드 컴플리션[3] 및 리팩토링 기능으로 수많은 IDEA빠(...)들을 양산하였다. 2009년에 무료 커뮤니티 에디션이 나온 이후에는 본격적으로 Java 개발을 위해 많이 사용되기 시작했다. 툴 자체도 Java와 Swing을 이용해서 제작되었으며, 플러그인 개발에 사용되는 언어 역시 Java이다. 윈도우/리눅스/macOS를 모두 지원한다. 2015년 Jolt Award의 코딩 툴 부문에서 상을 수상하였다. #

파일 시스템과 용어가 다른 IDE와는 좀 다르기 때문에 사전 학습이 필요하다. 이클립스의 워크스페이스 개념이 없고, 대신 빈 프로젝트 폴더 아래에 모듈이라는 서브 프로젝트 폴더를 생성하여 각각을 독립적으로 관리하게 된다.[4][5] 물론 빈 프로젝트+모듈 구조가 아닌 단일 프로젝트를 직접 만들 수도 있지만, 큰 규모의 프로젝트에서는 권장되지 않는다. 또한 이클립스의 Project-Specific JRE는 IntelliJ IDEA의 Module SDK와 대응된다.

단점이 있다면 이클립스에 비해 메모리를 많이 먹고, 큰 규모의 프로젝트일 경우 초기 구동 시 파일 인덱싱 과정에서 CPU 자원을 꽤 소모한다는 것이다. 아래에 서술된 플러그인들을 다 설치할 경우 로딩해야 하는 플러그인의 개수가 늘어나 CPU를 더 잡아먹는다. 라이젠 7을 쓰자 특히 자신이 안드로이드 앱을 개발할 게 아니라면 무거운 Android Support 플러그인은 비활성화해놓는 것이 좋다. 그리고 Java Virtual Machine 위에서 동작하는 프로그램이므로, Help → Edit Custom VM Options... 메뉴에서 메모리 사이즈와 GC 옵션 등을 잘 설정해야 한다.

2. 에디션과 라이선스[편집]

IntelliJ IDEA는 무료 버전인 커뮤니티 에디션과 유료 버전인 얼티밋 에디션으로 나뉘어진다.

커뮤니티 에디션은 아파치 라이선스 2.0을 따르는 오픈 소스로 배포되며 웹 개발을 비롯한 여러 기능들이 제한된다. 이 기능들을 사용하고 싶다면 유료 정기 구독권으로 판매되는 얼티밋 에디션을 구입해야 한다. 다소 비싸긴 하지만 돈 값은 확실하게 한다는 점만 알아두자. 그리고 많이 혼동하는 사실이지만 커뮤니티 에디션도 회사에서 이용 가능하다. 애초에 아파치 라이선스라는 것 자체가 상업적 이용을 제한하지 않는 라이선스이다. Java의 핵심 기능과 Maven, Gradle, Git 등은 커뮤니티 에디션에서도 지원하는 것들이기 때문에 그 외의 용도가 아니라면 회사 차원에서도 사용할 만하다. 커뮤니티 에디션은 기본적으로 버전 업데이트를 지원하지 않아 새 버전이 나오면 기존의 바이너리를 지우고 다시 설치해야 하지만, JetBrains Toolbox를 통해 IDE를 설치했을 경우 업데이트가 가능하다.

얼티밋 에디션의 연간 구독권을 구입하거나 월간 구독권을 연속해서 12개월 동안 구입하면 Perpetual Fallback License가 함께 제공되는데, 이건 자신이 구입한 그 버전을 제한 없이 영구적으로 쓸 수 있는 라이선스이다.[6][7] 대신 이 라이선스는 동일 버전(X.Y.Z의 'X.Y')의 IDE에 대한 버그 픽스(X.Y.Z의 'Z')만 제공되며[8][9], 이후 버전에서 추가된 기능을 사용하고 싶으면 새 구독권을 다시 구입해야 한다. 이 때는 월간/연간 상관없이 12개월 내 갱신 시 갱신한 시점의 버전(X.Y)이 제공된다.

연간 구독권을 구입할 경우 1년차에는 풀 프라이스로 판매되고, 2년차에는 30달러가 할인되며, 3년차 이후부터는 60달러가 할인된다.[10] 각 구독권은 IDE 단일 제품과 JetBrains의 모든 상용 제품들[11]이 포함된 묶음 팩으로 나뉘어 있는데, 이 할인은 같은 상품을 계속 구매할 경우에만 적용된다. IntelliJ IDEA 얼티밋 단일 제품만 2년간 사용하다가 3년차에 전 제품 묶음 팩을 구매한다고 해서 60달러 할인이 이루어지는 건 아니라는 뜻이다. 구독권이 유지되는 동안에는 버전 업데이트가 지속적으로 제공되고 업데이트 시기는 3월, 7월, 11월 말이다.[12]

기업용 라이선스와 개인용 라이선스가 따로 구분되어 있고, 학생/교사용 무료 라이선스도 존재한다. 특히 학생/교사용 라이선스는 JetBrains의 모든 상용 제품들을 1년간 제약 없이 사용할 수 있으며, 최대 갱신 횟수도 정해져 있지 않다![13] 하지만 이 라이선스는 어디까지나 교육적 목적으로만 제공되기 때문에, 자신이 학교에 다니지 않는다면 사용을 중단하는 것이 맞다.

3. 기타[편집]

프로젝트를 불러오기 전에 뜨는 'Welcome to IntelliJ IDEA' 창에서 Settings(Profile: Default IDE)와 Project Defaults → Project Structure를 설정하면 향후 추가되는 새 프로젝트에 전역적으로 적용된다. 또한 IDE Settings Sync 플러그인을 설치한 뒤 JetBrains 계정에 Settings 설정 내역을 연동하면 PC를 교체해도 그 설정을 간편하게 불러올 수 있다. 대신 운영 체제가 동일해야 하고, 커뮤니티 에디션에서는 이 플러그인을 사용할 수 없다.

2018.2 버전부터 MacBook Pro의 터치 바를 정식으로 지원한다. 특히 디버깅 세션에 진입하면 디버거 툴과 관련된 버튼들이 자동으로 표시되어 매우 편리하다.

구글안드로이드 스튜디오는 바로 이 IntelliJ IDEA를 기반으로 만든 IDE다. IntelliJ IDEA의 Android Support 플러그인이 안드로이드 스튜디오와 거의 동일한 개발 환경을 제공한다.[14] Clojure의 경우 Cursive라는 IntelliJ IDEA용 서드파티 플러그인[15]을 통해 개발 환경을 제공하고 있다.

4. 공식 지원 언어[편집]

  • 커뮤니티, 얼티밋 공통 기본

  • 커뮤니티, 얼티밋 공통 플러그인

    • Dart - Checked Mode 실행만 지원, Production Mode 사용 불가

    • Python - PyCharm 커뮤니티 또는 프로페셔널과 기능 동일, Django 프레임워크는 얼티밋 전용

    • Scala - Play 프레임워크와 Scala.js 컴파일러는 얼티밋 전용

  • 얼티밋 전용 플러그인

    • Ruby - RubyMine과 기능 동일, Ruby on Rails 프레임워크 지원

    • PHP - PhpStorm과 기능 동일[16], 컴포저 프로젝트 지원

    • JavaScript/TypeScript - WebStorm과 기능 동일, React 라이브러리와 AngularJS/Angular/Bootstrap/Vue.js 프레임워크 지원

    • Node.js - WebStorm과 기능 동일, Express.js 프레임워크 지원

    • Go - GoLand와 기능 동일

5. 시스템 요구 사항[편집]

운영 체제

Windows 10/8.1/8/7/Vista/2003/XP
Mac OS X 10.8 이상
Linux GNOME 또는 KDE 데스크탑 (64-bit 권장)

RAM

최소 1GB, 권장 4GB

하드디스크

300MB

화면 해상도

최소 1024 x 768

Java

Java Development Kit (JDK) 7[17][18][19]
Java Runtime Environment (JRE) 6 (OS X)[20]

에뮬레이터 가속(선택사항)[21]

Intel® processor with support for Intel® VT-x
Intel® EM64T (Intel® 64)
Execute Disable (XD) Bit functionality

6. 가이드[편집]

7. 관련 항목[편집]

8. 외부 링크[편집]

파일:크리에이티브 커먼즈 라이선스__CC.png 이 문서의 내용 중 전체 또는 일부는 안드로이드 스튜디오 문서의 r39 판에서 가져왔습니다. 이전 역사 보러 가기

[1] 다만 핵심 개발진은 대부분 러시아 지부의 R&D 센터에 있다.[2] 2012년에는 Java IDE 시장에서 28%에 머루르던 IntelliJ IDEA의 점유율이 2017년에는 이클립스를 꺾고 약 46%로 상승하였다. #[3] 히스토리 기반 자동완성 기능을 제공한다. 일반적으로 자동완성 리스트는 알파벳 순으로 나열되지만, 유사한 텍스트를 이미 코드 상에 작성했다면 그 단어를 먼저 띄우는 기능이다.[4] 프로젝트를 만들 땐 사용자가 지정한 폴더를 프로젝트 폴더'화'하는 것이고, 모듈을 만들 땐 새로운 폴더를 '생성'한다는 차이가 있다.[5] 단, 안드로이드 프로젝트의 경우 이렇게 생성하면 에러가 발생한다. 안드로이드 프로젝트는 의존성 정보 등을 담고 있는 .idea 폴더가 프로젝트 폴더 내에 존재해야 하는데, 빈 프로젝트 내의 모듈로 안드로이드 프로젝트를 만들면 .idea 폴더가 프로젝트 폴더 바깥에 위치하게 되어 오류가 생기는 것이다. 따라서 안드로이드 프로젝트는 처음부터 단일 프로젝트로 만들어야 한다.[6] 월간 구독권의 경우 1개월차에 구입한 버전[7] 만약 구독 기간 중에 버전 업데이트가 이루어졌을 경우, 해당 버전이 출시된 시점부터 12개월이 될 때까지 추가적인 구입을 해 줘야 업데이트된 버전에 대해서도 Perpetual License를 획득할 수 있다. #[8] 'IDE에 대한 버그 픽스'는 IntelliJ IDEA와 플러그인으로 공유되는 JetBrains의 모든 IDE에 적용된다. 예를 들어 GoLand에 버그 픽스 패치가 이루어졌을 경우, 버전이 같은 Perpetual License판 IntelliJ IDEA에 포함된 Go 플러그인에도 같은 패치가 적용되는 식. 이는 AppCode와 Rider를 제외한 JetBrains의 IDE들이 모두 동일한 버전 넘버링을 가지고 동시 출시되기 때문에 가능한 일이다. 그리고 새 버전이 나오면 대부분의 경우 버그 픽스도 중단된다.[9] Scala 플러그인과 같은 단독 플러그인을 포함하여, 기본적으로 IDE의 빌드 번호가 해당 플러그인의 호환 빌드(Compatible Builds) 범위 내에 있기만 하면 라이선스에 관계 없이 그 플러그인의 업데이트가 제공된다. 플러그인의 호환 빌드 범위는 JetBrains Plugins Repository에서 확인할 수 있다.[10] 그 대신 기존 구독권이 만료되고 6개월이 지나면 할인이 취소되어 다시 풀 프라이스에 구입해야 한다. 구독권이 만료된 후에는 클라이언트 실행 후 30분만 이용 가능한 상태로 전환된다.[11] IDE + 비주얼 스튜디오용 플러그인[12] 특정 플랫폼에 종속된 AppCode와 닷넷 계열인 Rider는 업데이트 시기가 다소 상이할 수 있지만, 1년에 버전 업데이트가 3회 제공되는 것은 동일하다.[13] 라이선스 만료 1주일 전에 갱신 확인용 메일이 온다.[14] 안드로이드 스튜디오 쪽이 업데이트가 더 빨라서 IntelliJ IDEA에는 즉시 적용되지 않는 경우가 많다. 게다가 플레이 스토어 앱 등록 기능은 안드로이드 스튜디오에서만 제공한다.[15] 기본 유료, 비상업적 용도 무료[16] PhpStorm은 WebStorm의 모든 기능을 포함한다. 참고로 PhpStorm과 WebStorm은 모두 자체 웹 서버(기본 포트번호 63342)를 내장하고 있다.[17] 리눅스 버전만 오라클 JDK라는 조건이 붙어 있다.[18] 물론 OpenJDK 환경에서도 못 쓰는 것은 아니다. 단지 경고 메세지창만 보여줄 뿐이다.[19] OpenJDK 8, OpenJDK 9에서 동작 확인[20] 폰트 렌더링에 필요하다.[21] Android Support 플러그인 구동 시 필요하다.