자바 개발을 시작하기 전에 반드시 JDK(Java Development Kit)가 설치되어 있어야 한다. JDK는 자바 애플리케이션을 개발하기 위한 필수 도구 모음으로, Oracle JDK 또는 OpenJDK 중에서 선택할 수 있다. 현재 사용 가능한 LTS 버전으로는 JDK 8, 11, 17, 21이 있으며, 새로운 프로젝트라면 JDK 17 이상을 권장한다. 설치 후에는 터미널에서 java -version과 javac -version 명령어를 실행하여 정상적으로 설치되었는지 확인하고, JAVA_HOME 환경 변수가 올바르게 설정되었는지도 점검해야 한다.
IntelliJ IDEA 설정
IntelliJ IDEA는 JetBrains에서 개발한 강력한 자바 통합 개발 환경으로, 무료 Community Edition과 유료 Ultimate Edition 두 가지 버전을 제공한다. Community Edition은 기본적인 자바 개발에 필요한 모든 기능을 제공하므로 개인 학습이나 소규모 프로젝트에 충분하다. 설치 후 첫 실행 시에는 JDK 설정이 가장 중요한데, File 메뉴의 Project Structure에서 Project SDK를 설치된 JDK로 설정해야 한다. 새 프로젝트 생성 시에는 Plain Java, Maven, Gradle 등 다양한 템플릿 중에서 선택할 수 있으며, 프로젝트 요구사항에 맞는 템플릿을 선택하는 것이 좋다.
IntelliJ의 강력한 기능 중 하나는 풍부한 플러그인 생태계인데, Lombok 플러그인은 코드 생성을 자동화해주고, SonarLint는 코드 품질을 실시간으로 검사해준다. 코딩 스타일 설정도 중요한 부분으로, Google Java Style Guide나 팀의 컨벤션에 맞게 설정하면 일관성 있는 코드를 작성할 수 있다. 개발 효율성을 높이기 위해서는 주요 단축키들을 숙지하는 것이 필수적인데, Ctrl+Shift+F10으로 현재 클래스를 실행하고, Ctrl+Space로 자동완성을 사용하며, Alt+Enter로 Quick Fix 기능을 활용할 수 있다.
Eclipse 설정
Eclipse는 오랜 역사를 가진 무료 IDE로, 특히 엔터프라이즈 환경에서 널리 사용되고 있다. Eclipse Foundation에서 제공하는 “Eclipse IDE for Java Developers” 패키지를 다운로드하면 자바 개발에 필요한 기본 구성 요소들이 모두 포함되어 있다. Eclipse의 특징 중 하나는 워크스페이스 개념인데, 시작할 때 프로젝트들이 저장될 워크스페이스 폴더를 지정해야 한다. JDK 설정은 Window 메뉴의 Preferences에서 Java → Installed JREs 섹션에서 할 수 있으며, 여러 JDK 버전을 등록하고 프로젝트별로 다른 버전을 사용할 수도 있다.
Eclipse의 장점은 다양한 플러그인과 확장 기능인데, Spring Tools Suite(STS)는 스프링 프레임워크 개발을 위한 필수 플러그인이고, Checkstyle 플러그인은 코딩 표준 준수를 도와준다. Eclipse Marketplace를 통해 필요한 플러그인들을 쉽게 설치할 수 있으며, 개발 효율성을 높이는 다양한 도구들을 추가할 수 있다. 단축키 역시 개발 속도에 큰 영향을 미치는데, Ctrl+F11로 프로그램을 실행하고, Ctrl+Shift+O로 불필요한 import 문을 정리하며, Ctrl+1로 Quick Fix 기능을 사용할 수 있다.
Visual Studio Code 설정
Visual Studio Code는 마이크로소프트에서 개발한 가벼운 코드 에디터로, Extension Pack for Java를 설치하면 강력한 자바 개발 환경으로 변신한다. 이 확장 팩에는 Language Support for Java, Debugger for Java, Test Runner for Java, Maven for Java, Gradle for Java 등이 포함되어 있어 자바 개발에 필요한 모든 기능을 제공한다. VS Code의 가장 큰 장점은 가벼움과 빠른 시작 속도인데, 대용량 프로젝트를 다룰 때도 상대적으로 적은 메모리를 사용한다.
자바 개발을 위한 VS Code 설정은 settings.json 파일을 통해 세밀하게 조정할 수 있다. JAVA_HOME 경로 설정, 런타임 환경 구성, 코드 포맷팅 스타일 지정 등을 JSON 형태로 설정할 수 있으며, 이러한 설정들은 프로젝트별로 다르게 적용할 수도 있다. VS Code의 통합 터미널 기능을 활용하면 별도의 명령 프롬프트를 열지 않고도 Maven이나 Gradle 명령어를 직접 실행할 수 있어 개발 워크플로우가 더욱 효율적이다.
IntelliJ IDEA로 Java HelloWorld

Welcome 화면
이 화면은 IntelliJ IDEA를 처음 실행했을 때 나타나는 시작 화면으로, 사용자가 새로운 프로젝트를 시작하거나 기존 프로젝트를 열 수 있는 옵션들을 제공한다. 화면 중앙에는 세 가지 주요 옵션이 큰 아이콘과 함께 표시되어 있는데, 첫 번째는 파란색으로 강조된 “New Project” 버튼으로 새로운 프로젝트를 생성할 때 사용한다. 두 번째는 “Open” 버튼으로 기존에 만들어진 프로젝트를 열 때 사용하며, 세 번째는 “Clone Repository” 버튼으로 Git 저장소에서 프로젝트를 복제할 때 사용한다.
좌측 패널에는 다양한 메뉴 옵션들이 나열되어 있다. “Projects” 섹션이 상단에 위치하고, 그 아래에는 “Remote Development”, “Dev Containers”, “Kotlin Notebooks” 등의 고급 기능들이 있다. 또한 “Customize”, “Plugins”, “Learn” 같은 개인화 및 학습 관련 메뉴도 제공된다. HelloWorld 프로젝트를 만들기 위해서는 중앙의 “New Project” 버튼을 클릭하여 프로젝트 생성 과정을 시작해야 한다.

새 프로젝트 설정
“New Project” 버튼을 클릭한 후 나타나는 프로젝트 설정 화면이다. 좌측 패널에는 다양한 프로젝트 타입과 프레임워크가 나열되어 있으며, 현재 “Java” 옵션이 파란색으로 선택되어 있다. Java 외에도 Kotlin, Groovy, Scala, Python 등 다양한 언어와 Spring Boot, JavaFX, Quarkus 등의 프레임워크를 선택할 수 있다.
우측 설정 패널에서는 프로젝트의 세부 정보를 입력할 수 있다. Name 필드에는 “mmix”라는 프로젝트 이름이 입력되어 있고, Location 필드에는 프로젝트가 생성될 경로가 “~/Workspace”로 설정되어 있다. Build system에서는 IntelliJ, Maven, Gradle 중에서 선택할 수 있으며, 현재는 “IntelliJ”가 선택되어 있다. JDK 버전은 21 version 21.0.5가 선택되어 있어 최신 자바 버전을 사용할 수 있다.
고급 설정 부분에서는 Gradle 관련 옵션들을 확인할 수 있다. Gradle DSL로는 Kotlin이 선택되어 있고, “Add sample code” 체크박스를 통해 샘플 코드를 포함할지 선택할 수 있다. Advanced Settings 섹션에서는 Gradle distribution, Gradle version, GroupId, ArtifactId 등을 더 세밀하게 설정할 수 있으며, “Use these settings for future projects” 옵션을 체크하면 향후 프로젝트에서도 동일한 설정을 사용할 수 있다. 모든 설정이 완료되면 우측 하단의 파란색 “Create” 버튼을 클릭하여 프로젝트 생성을 완료한다.
HelloWorld 프로젝트를 만들 때는 프로젝트 이름을 “HelloWorld”로 변경하고, 빌드 시스템은 초보자에게 더 간단한 “IntelliJ”를 선택하는 것이 좋다. “Add sample code” 옵션을 체크하면 기본적인 Main 클래스가 자동으로 생성되어 코딩을 더 쉽게 시작할 수 있다.

IntelliJ IDEA 프로젝트 생성 완료
이 이미지는 IntelliJ IDEA에서 “mmix”라는 이름의 자바 프로젝트가 성공적으로 생성된 후의 초기 화면을 보여준다. 상단 탭에서 프로젝트 이름이 “mmix”로 표시되어 있고, 좌측에는 Project 패널이 열려 있어 프로젝트의 기본 구조를 확인할 수 있다. 프로젝트 트리에는 mmix 루트 폴더와 그 하위에 External Libraries, Scratches and Consoles 항목들이 보인다.
중앙의 에디터 영역은 아직 파일이 열리지 않은 상태로, IntelliJ IDEA의 기본 안내 메시지들이 표시되고 있다. “Search Everywhere” 기능을 위한 Double Shift 단축키 안내, “Go to File” 기능의 Ctrl+Shift+O 단축키, “Recent Files” 접근을 위한 Ctrl+E 단축키, “Navigation Bar” 토글을 위한 Alt+Home 단축키 등 유용한 기능들에 대한 안내가 나와 있다. 또한 “Drop files here to open them”이라는 메시지를 통해 파일을 드래그 앤 드롭으로 열 수 있음을 알려준다.
화면 하단에는 현재 프로젝트 경로를 나타내는 브레드크럼(breadcrumb) 네비게이션이 “mmix > src > main” 형태로 표시되어 있어, 프로젝트의 기본 소스 폴더 구조가 생성되었음을 확인할 수 있다. 이 상태에서 HelloWorld 프로그램을 만들려면 src 폴더에 새로운 자바 클래스 파일을 생성하거나, 좌측 프로젝트 패널에서 src 폴더를 우클릭하여 새 파일을 추가해야 한다. 우측에는 다양한 도구 창들에 대한 아이콘들이 세로로 배열되어 있어, 필요에 따라 터미널, 버전 관리, 데이터베이스 등의 기능에 빠르게 접근할 수 있다.

HelloWorld.java 파일 작성
IntelliJ IDEA에서 HelloWorld.java 파일이 생성되고 코드가 작성된 상태를 보여준다. 좌측 Project 패널에서는 mmix 프로젝트의 전체 구조를 확인할 수 있으며, src/main/java 폴더 하위에 HelloWorld.java 파일이 생성되어 있다. 프로젝트 구조를 보면 .gradle, .idea, build, gradle 폴더들과 함께 일반적인 Gradle 프로젝트의 디렉터리 구조가 형성되어 있고, test 폴더도 포함되어 있어 단위 테스트를 작성할 수 있는 환경이 준비되어 있다.
중앙 에디터 영역에는 HelloWorld.java 파일의 내용이 표시되어 있다. 코드는 매우 간단한 구조로, public class HelloWorld로 클래스를 선언하고, 그 안에 public static void main(String[] args) 메서드가 포함되어 있다. main 메서드 내부에는 “Print a greeting message to the console”이라는 주석과 함께 System.out.println(“Hello, World!”); 코드가 작성되어 있어 콘솔에 “Hello, World!” 메시지를 출력하도록 되어 있다. 코드는 IntelliJ IDEA의 문법 하이라이팅 기능으로 인해 키워드, 문자열, 주석 등이 서로 다른 색상으로 표시되어 가독성이 높다.

프로그램 실행 및 결과 확인
HelloWorld 프로그램을 실행한 후의 상태를 보여준다. 화면 하단에 새로운 패널이 나타났는데, 이는 IntelliJ IDEA의 Run 도구 창으로 프로그램의 실행 과정과 결과를 표시한다. Run 탭에는 “mmix [:HelloWorld.main()]”이라고 표시되어 현재 실행 중인 프로그램의 정보를 알 수 있고, 실행 시간도 함께 표시된다.
콘솔 출력 부분에서는 프로그램의 빌드 과정과 실행 결과를 확인할 수 있다. “Task :compileJava”, “Task :processResources NO-SOURCE”, “Task :classes” 등의 메시지를 통해 Gradle이 자바 컴파일 과정을 수행하는 것을 볼 수 있고, “Task :HelloWorld.main()” 다음에 “Hello, World!” 메시지가 출력되어 프로그램이 정상적으로 실행되었음을 확인할 수 있다. 마지막에는 “BUILD SUCCESSFUL in 882ms”라는 메시지가 표시되어 전체 빌드와 실행 과정이 성공적으로 완료되었고 882밀리초가 소요되었음을 알려준다.
이 과정을 통해 IntelliJ IDEA에서 자바 프로젝트를 생성하고, 소스 코드를 작성하며, 컴파일하고 실행하는 전체 워크플로우가 얼마나 간단하고 직관적인지 확인할 수 있다. IDE의 통합된 환경에서 별도의 명령어나 복잡한 설정 없이도 버튼 클릭 한 번으로 프로그램을 실행하고 결과를 즉시 확인할 수 있어 개발 효율성이 크게 향상된다.