mir.pe (일반/어두운 화면)
최근 수정 시각 : 2024-10-09 14:41:24

이클립스(통합 개발 환경)

이클립스
eclipse
파일:이클립스 로고.svg
<colbgcolor=#ffffff,#1f2023><colcolor=#2C2255> 영문 명칭 Eclipse Foundation
라이선스 이클립스 공용 허가서
용도 통합 개발 환경
운영 체제 Windows, macOS, Linux
현재 버전 4.30.0 (2023년 12월 06일)
홈페이지 파일:홈페이지 아이콘.svg
1. 개요2. 역사
2.1. 코드 네이밍
3. 특징
3.1. 방대한 플러그인 지원
4. 기타

[clearfix]

1. 개요

Java를 기반으로 한 통합 개발 환경으로 이클립스 재단이 만들었다. Java는 Sun Microsystems에서 개발한 프로그래밍 언어이므로 태양(sun)과 관련 있는 식(蝕: 예를 들면 개기일식)을 의미하는 이클립스를 이름으로 채택하였다.

2. 역사

2001년부터 개발이 시작된 유구한 역사를 자랑하는 프로그램. 원래는 IBM의 IBM VisualAge용 소프트웨어 개발 툴로서 만들어졌으나, 제작 도중 방향이 바뀌어서 관련 소스 등을 모조리 공개하는 자유 소프트웨어가 되었고, 이를 '이클립스'란 이름하에 2001년 세상에 선보인 것이 이클립스의 시작이다. 이후 2004년 이클립스 재단이 창설되어 이클립스 IDE를 관리하게 된다.

새로운 버전을 항상 매년 6월 마지막 주에 공개하는 특성이 있었다. 첫 공개일부터 6월 21일이었고 그 후로도 매년 6월 28일, 30일, 22일 등 항상 6월 마지막 주, 그것도 7월로 넘어가기 이전의 마지막 주에 신버전을 내놓는 것을 원칙으로 삼고 있었다. 그러나 2018-09 버전 부터는 릴리스 정책이 변경되어 13주마다 새로운 업데이트를 출시하고 있다. #

2.1. 코드 네이밍

연대는 편의상 나누었다.

3. 특징

운영 체제의 제한 없이 Windows, macOS, 리눅스 중 어디서든 자유롭게 이용 및 수정, 재배포가 가능하다. 따라서 다양한 플랫폼의 소프트웨어 개발에 쓰일 수 있다.[1] 전자정부표준프레임워크의 개발 환경이 이클립스 기반이며, 삼성전자 웨이브 폰에 쓰였던 OS 바다 타이젠의 애플리케이션 개발 툴 역시 이클립스 기반이다.

여러 플랫폼뿐 아니라 여러 언어를 지원하는 것도 장점이다. Java 입문할 때 이클립스를 썼다면 다른 언어로 개발할 시 이클립스를 계속 써도 중박은 간다. 특히 PHP Python의 경우 이클립스를 계속해서 쓰는 경우도 있다.

그리고 이클립스만의 독보적인 장점이라면 여러 프로젝트를 동시에 열 수 있는 몇 안 되는 IDE 중 하나라는 것이다.[2] 가령 안드로이드(Java)와 라즈베리 파이(Python), 서버(Node.js)를 동시에 개발할 일이 필요하다면 일반적인 경우 Android Studio, PyCharm, WebStorm과 같은 IDE를 동시에 켜야 하는데 이클립스는 하나만 켜 두면 된다. 비주얼 스튜디오 IntelliJ IDEA, Xcode도 여러 언어를 지원하지만 이들은 프로젝트 여러 개를 한 창에서 동시에 열 수 없고 창을 여러 개 띄워서 스왑하는 형식으로 사용해야 한다.

3.1. 방대한 플러그인 지원

개발자들을 위한 플러그인 지원이 대단히 활발한 툴 중 하나다. 이클립스 플러그인들을 찾아다니다 보면 단순 디자인 툴부터 UML 설계툴, DB 디자인 도구 등등, 없는 게 없다. 안드로이드 등의 플랫폼 개발에는 아예 전용 라이브러리를 제공하기도 했다.[3] 개발 툴들이 그렇듯 아무나 쉽게 만지고 다니는 물건은 아니지만 C 언어와 자바에 대한 기본 지식만 있다면 굉장히 간편한 툴이다. 경쟁자로 넷빈즈(NetBeans)와 제이빌더(JBuilder) 등이 있었으나 현재는 사장되었다.

이클립스는 기본적으로 Java 개발용으로 쓰이는 경우가 가장 많지만, 플러그인을 사용하면 다른 언어의 개발도 가능하다. 가장 기본적으로 C/ C++를 지원하는 CDT부터 Python을 지원하는 PyDev, Ruby를 지원하는 RDT, 포트란을 지원하는 Photran도 있으며, 액션스크립트 개발툴인 FDT나 플래시빌더도 있다. 웹용으로는 Aptana가 있다. 플래시빌더 같은 경우에는 기본적으로는 별도로 나오는 스탠드얼론 툴이지만 이클립스 플러그인 형태로도 나온다.

그리고 비주얼 스튜디오마냥 시스템에 인스톨해서 사용하는 방식이 아니라 하드 디스크의 적당한 곳에 압축을 해제하여 실행 파일을 돌려 사용하는 방식(무설치판 같은 방식)인지라 사용 목적에 따라 다양한 이클립스 버전을 사용하는 것도 편리한 점의 하나이다.[4] 굳이 이런 방식을 택하는 이유는, 개발 언어나 목적에 따라 설치한 플러그인들이 서로 충돌하는 경우가 발생할 수 있으며, 이에 따라 프로그램이 꼬이는 일도 발생할 수 있기 때문이다. 가령 A 프로젝트에는 A1, A2 플러그인을 설치해 따로 사용하고 B 프로젝트에는 B1, B2 플러그인을 설치해 또 따로 사용하는 방식. 이것저것 해야 먹고사는 SI의 비애 그래서 어떤 플러그인을 깔면 다른 플러그인은 그 이클립스에는 못 깐다. 그러니까 이클립스 A에 어떤 플러그인 B를 깔고 난 다음엔 다른 플러그인 C가 깔리지 않는 경우가 있다.

어떤 개발 툴체인을 사용할 것인지를 직접 설정, 연결하여 사용할 수 있기 때문에 다른 언어뿐 아니라 다른 구동 환경에서 사용되는 프로그램의 제작, 즉 크로스 컴파일도 가능하다. 이는 x86 PC 환경에서 AVR, ARM32/64용 프로그램을 제작할 수 있다는 의미가 된다. 안드로이드 개발 환경으로 사용 가능한 것도 이러한 이유이다.[5]

유명한 플러그인으로 AWT/Swing 개발 툴킷인 WindowBuilder(구 Visual Editor)가 있다.[6]

4. 기타

리눅스, 윈도우, 맥을 모두 지원하며 AArch64 CPU도 지원한다. 패키지 다운로드

이클립스는 유져가 직접 커스터마이징을 하기보다 자바, 웹, PHP, 임베디드 용도에 맞는 별도 패키지로 배포되고 있는게 특징이다. 서드 파티에서도 이클립스를 커스터마이징 리브랜딩하여 많이 채택하고 있다. 이클립스 기반으로 최적하시킨 리브랜딩 IDE 경우 옵션, 키맵, 플러그인 등을 설치하지 않고도 바로 사용가능하다. 다수 익스텐션을 설치하여야 하고 오버헤드가 많고 용도가 불분명한 VSCode등에 비해 사용성 및 GUI 미려함도 월등하다.[7]

유명한 이클립스 기반 커스텀 IDE 중 하나로는 Spring Tool Suite가 있다. 흔히 STS로 줄여 부르는 물건으로, 이클립스에 Spring 개발용 플러그인을 포함시킨 패키지다. 물론 기존에 설치한 이클립스에 Spring 개발용 플러그인을 설치하는 선택지도 존재한다.

안드로이드 앱을 제작할 때 사용되기도 했으나, 구글에서는 JetBrains IDE 기반으로 안드로이드 스튜디오를 출시하였다.

Java 9의 경우는 Oxygen 4.7.1a 이후부터 지원하며 이전 버전들은 오류가 일어난다.

2018-12R 버전부터는 64Bit 운영 체제만 지원한다. 32Bit 운영 체제를 지원하는 이클립스는 2018-09 버전까지이다.

2020-09(4.17) 버전부터는 JAVA 11을 요구한다. JAVA 8 환경에서 작업하고 싶다면 2020-06(4.16) 또는 그 전 버전을 다운로드할 것.

Visual Studio Code IntelliJ IDEA Windows on ARM을 지원하는 것과 달리 아직까지 x86-64까지만 지원을 한다.[8]


[1] 다만 정말 아무 프로그램이나 다 만들어내는 것은 아니다. 결정적으로 iOS 앱은 만들 수 없다.) [2] 넷빈즈도 해당 기능을 지원하지만, 넷빈즈는 각 프로젝트별 콘솔 창을 한 화면에 분할 표시하는 기능이 없다. [3] 다만 구글에서 안드로이드 스튜디오를 출시하고 현재는 이클립스 지원이 완전히 중단된 상태. [4] 현재는 인스톨러가 나와 있다. 그러나 이것도 압축 해제를 대신 해 주는 정도이고 시스템 자체에 인스톨하지는 않는다. '제어판-프로그렘 추가/제거'에 가 보면 설치 후에도 이클립스는 존재하지 않는다는 것으로 확인할 수 있다. [5] 이것이 중요한 이유를 AVR을 예로 들어 설명하자면, 적절한 크로스 컴파일러만 나와 있다면 AVR studio를 이용하거나 CLI에서 직접 컴파일러를 구동시킬 필요 없이 더 편리한 환경에서 사용할 수 있다는 점이다. [6] 기존에는 동명의 회사가 유료 플러그인으로 판매했었으나, 구글이 회사를 인수한 후 플러그인을 무료로 배포하고 있다. [7] 다만 이클립스는 원래부터 IDE로 개발되었지만, VSCode는 Emacs같은 기능 좀 많은 텍스트 에디터라는 점을 고려해야 한다. [8] 물론 macOS 리눅스에서는 ARM64 환경을 지원한다.