본문 바로가기

Development/Back-End

인텔리제이 IntelliJ IDEA 설치 & 기본 환경 세팅 가이드 (Spring Boot 기준)

 

인텔리제이(IntelliJ IDEA)는 JetBrains에서 제공하는 강력한 Java/Spring 개발 환경 IDE
특히 코드 자동 완성, 리팩토링, Spring Boot 지원, Git 연동의 장점을 가진다.

 

 

1. 설치 방법

 

Download IntelliJ IDEA

Download the latest version of IntelliJ IDEA, the leading IDE for professional development in Java and Kotlin. Available for Windows, macOS, and Linux.

www.jetbrains.com

 

인텔리제이 다운로드 사이트에 들어가 다운로드 클릭

- Ultimate : 유료버전 / 강력한 내장 DB 브라우저 지원 / 웹 프레임워크 강화 지원
- Community : 무료버전 / Spring Boot 전용 기능 제한

 

 

설치 옵션의 경우, 기본적으로 많이 하는 옵션만 체크한 설정이니 참고!

다음 버튼 계속 눌러주면 설치 완료 ✔️

 

 

2. 기본 UI 세팅 (테마 및 폰트)

 

기본적으로 테마폰트를 설정해서 내가 쓰기 편하게끔 UI 설정을 하게 되는데 내장되어 있는 테마를 사용해도 좋고 다른 테마를 가져와 사용도 가능

폰트는 기본으로 세팅되어 있는 JetBrains Mono 폰트로 사용

 

 

 

3. 인텔리제이 내 유용한 환경 세팅 

1) 자동 저장 관련

인텔리제이는 기본 autosave

하지만, 자동 저장이 불편하다면 off 도 가능

Autosave에 있는 체크박스 항목이 체크되어 있다면 저렇게 풀어서 저장

저장 안된 파일은 앞에 *표시로 확인 가능

(만약 표시가 안된다면, File > Settings > Editor > General > Editor Tabs > Mart Modified 체크 해제하기)

 

2) 코드 자동 정렬

이건 단축키가 있어 단축키 사용을 하면 편하게 적용 가능

Ctrl + Alt + L (Windows/Linux) 또는 Cmd + Alt + L (macOS)로 정렬이 가능하고, 부분으로 정렬하고 싶으면 정렬할 코드 드래그 후 단축키 사용

 

❗그 밖에 알면 유용할 단축키

Shift + Shift → 전체 검색
Cmd/Ctrl + Shift + A → 액션 검색
Cmd/Ctrl + E → 최근 파일
Option/Alt + Enter → IntelliJ 자동 수정
Cmd/Ctrl + B → 선언부 이동
Cmd/Ctrl + 클릭 → Bean/메서드 추적

 

 

3) 대소문자 일치 검색 옵션

 

코드 자동완성 기능 사용 시, 대소문자 구분 여부 관련한 옵션인데 Match case의 경우 대부분 해제하고 사용

이유는 대소문자 완전히 일치하는 경우에만 검색되며 그로 인해 변수명, 메서드명, 클래스명 찾기가 어려워지기 때문

 

 

4) Code Style 통일

팀 내에서 사용되는 공통 스타일이 있다면 .xml 파일로 불러와 적용이 가능하고 따로 세팅도 가능하다. 

코드 들여쓰기, 공백 규칙, import 순서, 메서드 정렬 등 언어에 맞게 스타일 세팅 가능

 

 

 

 

4. 필수 플러그인

1) Lombok : Getter, Builder 등 필수 

2) .env files : 환경변수(DB URL, 계정 등) 관리

3) Spring Boot Assistant : Spring Boot 외부 설정 파일(application.yaml/properties 등)에 대한 지원

4) GitToolBox : 커밋 이력 확인, 협업 시 필수 

5) Rainbow Brackets : 코드 가독성 증가

6) Swagger/OpenAPI : API 문서 자동 생성 / 프로젝트가 Swagger/OpenAPI 기반이면 필수

7) String Manipulation : 텍스트 변환 실무에서 자주 필요

8) REST Client Enhancer : HTTP를 직접 요청하고 실행을 하여 응답을 받을 수 있도록 하는 API 테스트를 도와주는 플러그인

9) Json Parser : JSON을 변환·정렬·포맷·검증하는 기능

10) MyBatisX : MyBatis 프로젝트에서 필수

 

 

실무 프로젝트마다 상이해서 필수라고 하기는 애매한 플러그인도 존재

추가적으로 설치해야할 플러그인이 존재한다면 설치하면 되고 실무적으로 설치되어 있는 플러그인을 체크해보는 것도 추천 👍

 

참고로! 인텔리제이 Ultimate에는 기본적으로 설치되어 있는 플러그인 즉 내장되어 있는 기능들이 존재해서 확인 후 필요한 것만 설치 ( Docker, JPA, Lombok, Spring Boot Assistant, REST Client Enhancer  등은 내장되어 있음 )

 

 

 

5. JDK & Gradle 설정

1) JDK

 

SDK 는 17로 설정했고 자바 버전에 맞게 세팅하면 끝

Language Level 은 SDK 랑 동일하게 세팅

Language Level 을 낮추거나 높이면 빌드와 실행이 다르게 동작하는 버그 생김 → 반드시 SDK 와 동일하게 설정

 

Settings 에서 Java Compiler 내 버전을 앞서 세팅한 버전으로 맞게 설정해주기

( same as language Level 옵션이 디폴트이지만 체크하기 )

 

2) Gradle 설정

File → Settings → Build Tools → Gradle 에서

Build and Run using → IntelliJ
Run Tests using → IntelliJ

 

설정 후 저장

 

📌 왜 IntelliJ 로 세팅❓

- Gradle로 실행하면 느림 (특히 테스트)

- DevTools auto-reload도 느려짐

- IntelliJ 실행이 훨씬 빠르고 안정적

- 실무에서 90% 개발자들이 IntelliJ 실행을 사용함

단, CI/CD는 Gradle로 빌드
개발환경은 IntelliJ → 운영환경은 Gradle
이 조합이 가장 실무적

 

 

3) Gradle JVM 설정

File → Settings → Build Tools → Gradle

Gradle JVM 을 앞서 JDK 버전에 맞게 세팅 후 저장

 

 

4) Gradle 빌드 캐시 설정

File → Settings → Build Tools → Gradle 내 아래와 같이 설정

Build directory → default
Offline mode → OFF (실무에서는 끄는 게 정석) : 의존성 업데이트가 실시간으로 안되기 때문❗/ 의존성 다운로드 금지용

 

Offline mode 가 없다면 인텔리제이 “Offline work(의존성 다운로드 금지)” 옵션이 아예 제거된 최신 버전일 가능성 ↑

 

 

 

6. Git / GitHub연동

 

Settings Version Control 에서 Git, GitHub, GitLab 연결 가능

Git 의 경우 Git executable path 가 자동으로 잡혀 있는 것이 정상이며 디렉토리 경로가 Git\bin\git.exe 이런 식으로 잡혀있는 것을 확인하면 끝

나 같은 경우엔 GitHub 를 사용하기 때문에 계정 추가를 한 후 내 GitHub 로 들어가 토큰 발급 한 후 등록 완료 ✔️

 

 

GitHub 토큰 발급 방법

GitHub 로그인 후 프로필 이미지 클릭 → Settings Developer Settings → Personal access tokens (classic) Generate new token 에서 발급 받으면 끝 !

 

 

 

7. 인텔리제이 Export / Import

1) Export Settings (백업)

File → Manage IDE Settings → Export Settings…

 

2) Import Settings (복원)

File → Manage IDE Settings → Import Settings…

 

3) JetBrains 계정 기반 Settings Sync

File → Backup and Sync …

계정이 있다면 백업 ZIP을 수동으로 만들 필요도 없어지고 자동으로 모든 기기에 설정이 동기화