HOWTO · Java
Eclipse에서 Java 버전 변경
이 기사에서는 Eclipse에서 현재 프로젝트의 Java 버전을 변경하는 방법을 알려줍니다.
이 페이지의 내용
Eclipse 프로젝트에서 사용할 Java 버전을 바꾸려면 먼저 원하는 Java 개발 키트(JDK) 또는 Java 런타임 환경(JRE)을 컴퓨터에 설치한 다음, Eclipse에서 해당 설치를 사용할 수 있도록 등록하고 프로젝트에 선택해야 합니다. Eclipse의 런타임 환경 설정은 Java를 다운로드하거나 설치하지 않습니다. 새 프로젝트와 기존 프로젝트는 각각 런타임을 따로 선택해야 하며, 이 선택은 Java 컴파일러의 호환성 수준과 별개입니다.
Eclipse에 설치된 JRE 추가
Eclipse에서는 컴퓨터에 이미 설치된 Java 런타임을 선택할 수 있습니다. 프로젝트를 변경하기 전에 사용할 JDK 또는 JRE 버전을 설치하세요. JDK에는 런타임뿐 아니라 개발 도구도 포함되어 있어 Java 소스 코드를 컴파일할 때 일반적으로 적합합니다. JRE는 런타임 환경을 제공합니다. 설치 패키지와 지원되는 Java 버전은 운영체제와 프로젝트 요구 사항에 따라 달라집니다.
Eclipse의 Java 런타임 설정에서 설치 위치를 지정하고 알아보기 쉬운 이름을 붙여 로컬 설치를 등록하세요. 설정의 정확한 이름과 이동 경로는 Eclipse 버전에 따라 달라질 수 있으므로 특정 메뉴 순서에 의존하지 말고 설치된 버전에서 제공하는 Java 런타임 설정을 이용하세요. 등록하면 Eclipse에 Java가 설치된 위치를 알려 줄 수 있지만, Java가 설치되거나 해당 런타임이 모든 프로젝트에 자동으로 선택되는 것은 아닙니다.
원하는 설치가 Eclipse에서 사용할 수 있는 런타임 목록에 이미 있다면 그 항목을 선택하면 됩니다. 목록에 없다면 먼저 Java를 설치한 다음 로컬 설치를 Eclipse에 추가하세요. 설치가 여러 개라면 Java 버전이나 배포판을 포함한 명확한 이름을 사용하세요. 그러면 나중에 프로젝트에서 런타임을 선택할 때 쉽게 구별할 수 있고 이름이 비슷한 런타임을 혼동할 가능성도 줄어듭니다.
Eclipse에서 새 프로젝트의 Java 버전 선택
프로젝트를 만들 때 등록된 런타임 중 하나를 프로젝트의 JRE로 선택하세요. 이 선택에 따라 해당 설정으로 프로젝트를 실행하거나 빌드할 때 Eclipse가 프로젝트와 연결하는 Java 런타임이 결정됩니다. 애플리케이션과 종속 항목에 필요한 버전을 선택하세요. 더 최신 Java 설치를 사용한다고 해서 이전 버전을 대상으로 하는 애플리케이션과 자동으로 호환되는 것은 아닙니다.
프로젝트 설정 중 원하는 런타임이 표시되지 않으면 Eclipse에 등록된 런타임으로 돌아가 로컬 JDK 또는 JRE가 추가되어 있는지 확인한 뒤 프로젝트 런타임을 다시 선택하세요. 프로젝트에는 컴파일러의 호환성 수준이나 소스 호환성 설정이 별도로 있을 수도 있습니다. 이 설정은 컴파일러가 대상으로 삼는 Java 언어 수준과 클래스 파일 수준을 지정합니다. 런타임을 선택해도 이 설정이 반드시 바뀌는 것은 아닙니다. 두 설정을 프로젝트 요구 사항에 맞추되, 같은 옵션이라고 간주하지 마세요.
Eclipse에서 기존 프로젝트의 Java 버전 변경
기존 프로젝트에서 사용하려는 등록된 JDK 또는 JRE로 프로젝트에 연결된 런타임을 변경하세요. Eclipse에서 프로젝트 설정을 통해 이를 변경할 수 있지만, 설정 이름과 배치는 버전에 따라 달라집니다. 프로젝트의 Java 런타임 또는 JRE 시스템 라이브러리 설정을 찾아 현재 런타임을 원하는 항목으로 바꾸고, 사용 중인 Eclipse 버전의 설정을 적용하세요. 원하는 런타임이 선택 항목에 없다면 먼저 로컬 설치를 등록해야 합니다.
변경 사항을 적용한 뒤 프로젝트의 런타임 설정을 확인해 원하는 설치가 지정되어 있는지 살펴보세요. 프로젝트를 실행하고 애플리케이션이 보고하는 Java 버전을 확인할 수도 있습니다. 프로젝트 안에서 간단히 확인하려면 아래의 완전한 Java 프로그램을 실행하면 현재 JVM의 런타임 버전이 출력됩니다. 이 예제의 기록된 실행에서는 17.0.20.1이 출력되었습니다. 이 값은 해당 실행에 사용된 JVM을 나타내며, 실제 출력은 프로젝트에서 선택한 JVM에 따라 달라집니다.
이 예제를 실행하세요:
public class Main {
public static void main(String[] args) {
System.out.println(System.getProperty("java.version"));
}
}
17.0.20.1
프로그램이 성공적으로 실행되면 해당 프로그램을 실행한 JVM은 확인할 수 있지만, 컴파일러의 소스 수준이나 호환성 수준까지 확인되는 것은 아닙니다. 보고된 런타임이 원하는 버전과 다르면 프로젝트의 런타임 선택을 다시 살펴보고, 어떤 실행 설정 또는 프로젝트를 실행하고 있는지 확인하세요. 완전히 이전하려면 컴파일러 호환성 설정도 별도로 검토하고 필요한 라이브러리와 빌드 도구가 선택한 Java 버전을 지원하는지 확인하세요.