JShell 사용자 가이드: 1. JShell 소개
- 원문: https://docs.oracle.com/javase/9/jshell/introduction-jshell.htm
- 제목: Java Platform, Standard Edition Java Shell User’s Guide: 1 Introduction to JShell
- 문서번호: E87478-01
- 배포: 2017년 09월
- 라이센스: 원본 문서 라이센스를 준수합니다.
Java Shell(JShell)은 Java 프로그래밍 학습과 Java 코드 프로토타이핑을 위한 대화식 도구입니다. JShell에 선언문, 식(Expression), 문(Statement) 및 JShell 명령을 입력하면, 즉시 입력이 평가되고 그 결과(Feedback)가 출력됩니다. JShell은 Java9에 새로 추가된 REPL (Read-Evaluate-Print Loop)입니다. 이 도구는 커맨드 라인에서 실행됩니다.
- 문서 구성
- JShell는 왜 필요한가?
- JShell 시작하고 종료하기
JShell의 추가 정보는 Java Platform, Standard Edition Tool Reference 문서의 jshell 절을 참조하시기 바랍니다.
JShell는 왜 필요한가?
JShell에 프로그램밍 요소를 입력하면, 실행 결과를 즉시 확인할 수 있습니다. 필요할 경우 프로그램 요소를 바로 수정할 수도 있습니다.
일반적으로 자바 프로그램은 다음 프로세스를 거쳐 개발됩니다.
- 완전한 형태의 프로그램 개발
- 프로그램 컴파일 및 에러 수정
- 프로그램 실행
- 프로그램 실행 중 오류 파악
- 프로그램 수정
- 지금까지 개발 절차 반복
자바 프로그램을 개발할 때, JShell을 사용하면 코드 실행과 옵션 탐색이 매우 편리합니다. JShell 세션에서 개별적인 문(Statement)을 실행하고 테스트할 수 있고, 메서드의 다양한 옵션을 시험해볼 수 있으며, 익숙하지 않은 API를 실험할 수 있습니다. 그러나 JShell이 IDE를 대체하는 것은 아닙니다. 프로그램을 개발할 때, JShell에 코드를 붙여넣고 시험할 수 있습니다. JShell에서 코드가 정상적으로 동작하면, JShell의 코드를 프로그램 편집기 및 IDE에 복사한는 방식으로 작업을 진행할 수 있습니다.
JShell 시작 및 종료
JShell은 JDK 9에 포함되어 있습니다. JShell을 시작하기 위해서는 터미널에 jshell 명령을 입력해야 합니다.
JShell을 사용하기 위해서는, 사용 중인 컴퓨터에 JDK 9이 설치되어 있어야 합니다. java-home/jdk-9/bin 디렉터리가 PATH 환경 변수에 설정되어 있다면, 디렉터리 위치와 상관없이 jshell을 어디서든지 실행할 수 있습니다.
다음은 jshell를 실행하고 JShell로 부터 결과를 받는 예제입니다. % 다음 코드는 사용자가 입력한 명령입니다.
% jshell
| Welcome to JShell -- Version 9
| For an introduction type: /help intro
jshell>
이 문서의 모든 예제는 verbose 모드(상세정보 출력 모드)로 실행한 결과입니다. 이 문서를 실습할 때 Verbose 모드를 사용할 것을 추천합니다. Verbose 모드를 사용하면 예제와 동일한 결과를 확인할 수 있습니다. JShell에 익숙해지면 일반 모드(Normal mode) 혹은 간결 모드(consice Mode)로 전환하여 JShell을 실행하는 것이 좋습니다.
JShell을 Verbose 모드로 실행하기 위해서 -v 옵션을 사용합니다.
% jshell -v
JShell 세션을 종료할 때는 /exit 명령을 사용합니다.
jshell> /exit
| Goodbye