Java 사용하기
ServBay는 macOS에서 Java 개발자를 위한 유연하고 강력한 개발 환경을 제공합니다. ServBay의 패키지 관리 시스템을 통해 여러 OpenJDK 버전을 손쉽게 설치, 관리 및 실행할 수 있으며, 프로젝트별 구성 파일인 .servbay.config
를 이용해 각 프로젝트에 맞는 특정 Java 버전을 지정할 수 있어 다양한 개발 요구를 충족할 수 있습니다.
개요
Java 언어 소개
Java는 Sun Microsystems(현재 Oracle에 인수됨)의 James Gosling 등이 1995년에 발표한, 대표적이면서 널리 쓰이는 객체 지향 프로그래밍 언어입니다. "한 번 작성하면 어디서나 실행된다"(Write Once, Run Anywhere, WORA)라는 핵심 이념 아래 개발되었으며, Java 가상 머신(JVM)이 컴파일된 Java 바이트코드를 다양한 플랫폼에서 실행할 수 있게 해줍니다.
Java는 플랫폼 독립성, 강력한 생태계, 자동 가비지 컬렉션을 통한 메모리 관리, 풍부한 라이브러리, 다중 스레드 지원 등으로 유명합니다. 엔터프라이즈 애플리케이션, 대형 웹사이트 백엔드, Android 모바일 앱, 빅데이터 처리(Hadoop 등), 금융 서비스, 과학 계산 등 다양한 분야에서 널리 활용됩니다. OpenJDK는 Java SE(표준 에디션)의 공식 오픈소스 참조 구현이며, ServBay가 제공하는 주요 Java 버전입니다.
ServBay의 Java 지원
ServBay는 여러 OpenJDK 버전을 각각의 독립적인 패키지로 관리합니다. 이를 통해 다양한 장점이 있습니다:
- 병렬 설치: OpenJDK 8, 11, 17, 21 등 다양한 버전을 동시에 설치할 수 있습니다.
- 프로젝트별 버전 제어: ServBay의 고유 파일
.servbay.config
로 프로젝트마다 필요한 Java 버전을 정확하게 지정할 수 있습니다. - 간편한 관리: ServBay의 그래픽 인터페이스에서 각 JDK 버전을 직관적으로 확인, 설치, 제거할 수 있습니다.
- 빌드 도구 통합: Apache Maven 등 자주 사용하는 Java 빌드 도구 설치도 지원합니다.
이러한 기능은 여러 Java 버전의 레거시 프로젝트를 관리하거나, 신규 프로젝트 개발 및 특정 Java 툴체인 운영이 필요한 개발자에게 큰 가치를 제공합니다.
Java 패키지 접근하기
- ServBay 앱을 실행합니다.
- 왼쪽 내비게이션 바에서
패키지 (Packages)
를 클릭합니다. 패키지
페이지에서 아래로 스크롤하거나, 왼쪽 세부 분류에서Languages
->Java
를 선택합니다.- 오른쪽 영역에서 모든 사용 가능한 OpenJDK 패키지 목록과 관련 빌드 도구(Apache Maven은 Common Services 또는 Tools 아래에 표시될 수 있음)가 나타납니다.
OpenJDK 설치하기
패키지 목록에서는 각 OpenJDK 버전의 상태를 명확하게 보여줍니다:
- Package Name: 패키지 이름(예:
OpenJDK 11
) - Version: 해당 패키지의 자세한 버전
- Status: 현재 설치 상태(
Installed
(설치됨),Not Installed
(미설치)) - Control: 관리 버튼 제공
아직 설치하지 않은 OpenJDK 버전(예: OpenJDK 17
)을 설치하려면:
- 목록에서 원하는 버전을 찾습니다.
- 상태가
Not Installed
인지 확인합니다. - 가장 오른쪽의 다운로드/설치(Download/Install) 아이콘(보통 아래 화살표)을 클릭합니다.
- ServBay가 해당 JDK 버전을 다운로드 및 설치합니다. 네트워크 속도와 JDK 크기에 따라 시간이 걸릴 수 있습니다.
- 설치 완료 후 상태가
Installed
로 변경되고, 제어 아이콘이 삭제(Uninstall) 아이콘(휴지통)으로 바뀝니다.
설치된 JDK 관리
- 설치된 버전 확인: 목록에서
Installed
로 표시된 항목으로 현재 환경에 설치된 모든 OpenJDK 버전을 파악할 수 있습니다. - JDK 제거: 더 이상 필요 없는 JDK 버전을 삭제하려면 해당 행의 삭제(Uninstall) 아이콘(휴지통)을 클릭하고, 확인하면 시스템에서 제거됩니다.
설치된 JDK 사용하기
ServBay는 OpenJDK 설치 후 관련 환경 변수(JAVA_HOME
, PATH
등)를 관리하여, ServBay 환경이 활성화된 터미널에서 바로 사용할 수 있도록 합니다.
자주 사용하는 명령 예시:
현재 활성 Java 버전 확인: 터미널을 열고 다음을 실행합니다:
bashjava -version
1이 명령은 현재 터미널 세션에서 기본 활성화된 Java(OpenJDK) 버전을 보여줍니다. 이 버전은 전역 설정이나 프로젝트별
.servbay.config
파일의 영향을 받을 수 있습니다.Java 컴파일러 버전 확인:
bashjavac -version
1
프로젝트별 버전 관리: .servbay.config
의 강력함
여러 프로젝트를 다룰 때, 각각의 프로젝트가 맞는 Java 버전을 사용하는 것은 매우 중요합니다. ServBay는 프로젝트별 환경설정 파일인 .servbay.config
를 제공합니다.
주요 이점:
- 멀티 언어 지원: 같은
.servbay.config
파일에서 Java 외에도 PHP, Node.js, Python, Go, Ruby, .NET 등 다양한 언어 버전을 지정할 수 있습니다. - 환경 일관성: 팀원 간 또는 배포 단계별로 완전히 동일한 언어 버전 사용을 보장합니다.
- 자동 전환: 터미널에서
cd
로.servbay.config
파일이 있는 프로젝트 디렉터리에 들어가면 ServBay 환경이 해당 파일 설정을 자동 로드하며, 지정한JAVA_VERSION
으로 전환됩니다.
설정 예시:
Java 프로젝트 루트에 .servbay.config
파일을 생성한 뒤, JAVA_VERSION
변수에 필요로 하는 OpenJDK 메이저 버전(예: 11, 17, 21)을 입력합니다. ServBay는 설치된 해당 메이저 버전 계열의 최신 리비전을 자동으로 사용합니다.
ini
# .servbay.config
# 프로젝트에서 사용할 OpenJDK 메이저 버전 지정(예: 11)
# ServBay가 설치된 11.x.y 버전 중 최신 리비전을 자동 선택
JAVA_VERSION=11
# 다른 언어 버전/설정도 함께 지정 가능
PHP_VERSION=8.2
NODE_VERSION=20
# ... 기타 설정 ...
NPM_CONFIG_REGISTRY=https://registry.npmmirror.com/
GOPROXY=https://goproxy.cn,direct
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
이 위치에서 터미널을 열고 ServBay 환경을 활성화한 후 java -version
을 실행하면 .servbay.config
에 지정한 Java 버전(또는 해당 계열의 설치된 가장 최신 버전)이 사용됩니다.
빌드 도구: Apache Maven
많은 Java 프로젝트에서는 의존성, 컴파일, 테스트, 패키징 관리를 위해 빌드 도구를 사용합니다. Apache Maven은 그 중 가장 인기 있는 도구입니다.
- Maven 설치: ServBay의
패키지 (Packages)
->Java
분류에서 Apache Maven을 찾아 JDK 설치와 동일하게 설치할 수 있습니다. - Maven 사용: 설치 후, ServBay 환경이 활성화된 터미널에서 바로
mvn
명령어를 사용할 수 있습니다.bash# Maven 버전 확인 mvn -version # Maven 프로젝트 디렉터리에서 빌드 명령 실행 # 예: 컴파일 및 패키징 mvn clean package
1
2
3
4
5
6
웹 서버 통합 (Java 웹 애플리케이션 배포)
Spring Boot, Jakarta EE 등 다양한 프레임워크로 만든 Java 웹 애플리케이션은 실행 가능한 JAR 파일 또는 WAR 파일로 패키징하는 경우가 많습니다.
- 실행 JAR:
java -jar myapp.jar
명령어로 바로 실행할 수 있습니다. 표준 포트(80/443)로 접근하고, ServBay의 도메인 및 SSL 기능을 활용하려면, ServBay의 웹 서버(Nginx, Caddy, Apache 등)에 리버스 프록시를 설정해 지정 도메인 요청을 Java 애플리케이션 내부 포트(예: 8080)로 전달하도록 할 수 있습니다. - WAR 파일: Apache Tomcat, Jetty와 같은 서블릿 컨테이너에 배포해야 합니다. ServBay는 향후 Tomcat 등 패키지를 지원할 예정이며, 이를 설치 후 사용할 수 있습니다. 역시 리버스 프록시 구성을 통해 Tomcat 포트로 요청을 전달할 수 있습니다.
자세한 내용은 ServBay의 사이트 추가하기, 리버스 프록시 설정 문서를 참고하세요.
요약
ServBay는 macOS의 Java 개발자에게 원스톱 솔루션을 제공하여, 다양한 OpenJDK 버전의 손쉬운 설치, 관리, 전환을 지원합니다. .servbay.config
로 프로젝트별 버전 제어와 Maven 등 빌드 도구 통합 지원을 결합함으로써, ServBay는 Java 개발 효율과 환경 일관성을 크게 향상시켜 드립니다.