0. 환경
- Window 11
- IntelliJ IDEA
- Java 17
1. 윈도우 환경 변수 설정
개발자를 준비하고 있다면 Java 정도는 스스로 설치할 수 있다고 생각하여 설치했다고 가정한다.
운영체제는 프로그램들이 실행하면서 사용할 수 있는 값들을 환경 변수 이름으로 관리하게 된다.
JDK를 설치하고 나면 프로그램들이 JDK를 이용할 수 있도록 환경 변수를 생성하고, Path 환경 변수를 수정해 주는 것이 좋으니 설정해보도록 하겠다.
1) 환경 변수를 새로 만들거나 편집하기 위해서는 환경 변수 대화 상자를 열어야 한다. 윈도우 키를 눌러 나오는 검색 칸에 '환경 변수'를 입력하면 [시스템 환경 변수 편집] 메뉴가 나오는데, 이것을 눌러주자.
이것을 눌러주면 아래와 같은 시스템 속성 창이 나오는데 [환경 변수] 버튼을 클릭한다.
2) 환경 변수 대화상자에서 시스템 변수의 [새로 만들기] 버튼을 클릭한다.
3) 새 시스템 변수 대화상자가 나타나면 변수 이름에는 'JAVA_HOME'을 입력하고, 변수값에는 [디렉터리 찾아보기] 버튼을 클릭한 후 JDK가 설치된 경로인 'C:\Program Files\Java\jdk-17.0.3'을 선택해준다. 그리고서 [확인]을 클릭한다.
4) JDK가 설치된 경로로 들어가면 bin 디렉토리가 존재한다. bin 디렉토리 안에는 다양한 명령어들이 존재하는데, 대표적으로 자바 소스 파일을 컴파일해주는 javac.exe와 자바 프로그램을 실행해주는 java.exe 명령어가 있다.
javac와 java 명령어는 명령 프롬포트 또는 파워쉘에서 컴파일하고 실행할 때 사용된다. bin 디렉토리 안에 있지만 어떤 위치에서도 사용할 수 있도록 Path 환경 변수에 경로를 추가해보자. 환경 변수 대화 상자의 시스템 변수에서 Path 환경 변수를 선택하고 [편집] 버튼을 클릭한다.
5) 환경 변수 편집 대화상자가 나타나면 [새로 만들기] 버튼을 클릭하고 추가된 항목에 직접 '%JAVA_HOME%\bin'을 입력한다. %JAVA_HOME%은 JAVA_HOME 환경 변수의 값을 의미한다. 따라서 %JAVA_HOME%\bin은 C:\Program Files\Java\jdk-17.0.4.1\bin이 된다.
입력이 끝나면 [위로 이동] 버튼을 클릭하여 첫 번째 항목으로 올려준다. 이렇게 해주는 이유는 Path 환경 변수에 등록된 순서대로 명령어를 서치하기 때문이다. 만약에 %JAVA_HOME%\bin보다 순서가 빠른 경로에 java 명령어가 있다면 다른 버전의 java 명령어 사용될 수 있으니 주의해야 한다. 끝났다면 [확인] 버튼을 클릭해서 빠져나오자.
6) 환경 변수가 올바르게 설정되었는지 확인하기 위해 명령 프롬포트 또는 파워쉘을 실행하여 다음과 같은 javac 명령어를 실행해보자.
C:\...>javac -version
명령어를 실행한다면 다음과 같이 자신이 환경 변수로 설정해준 Java의 버전들이 보이게 된다.
7) 그리고 java 명령어를 다음과 같이 실행해보자.
C:\...>java -version
명령어를 입력한다면 다음과 같은 메세지가 출력된다.
만일 '외부 명령, 실행할 수 있는 프로그램 또는 배치 파일이 아닙니다.'라는 메시지가 출력되면 환경 변수 설정이 잘못된 것이다. 이 경우에는 환경 변수 JAVA_HOME과 Path를 다시 확인하고 수정해야 한다. 수정한 후에는 현재 명령 프롬프트 또는 파워쉘을 닫고 재시작해야 한다.
2. 인텔리제이를 이용한 간단한 프로젝트 생성
통합 개발 환경(IDE) 도구는 대부분 프로젝트를 먼저 생성한 후 소스 파일을 작성한다. 인텔리제이 또한 마찬가지이다.
1) 메뉴에서 [파일] - [새로 만들기] - [프로젝트..]를 선택한다.
2) 새 프로젝트 대화상자가 나타나면 이름 입력란에 'ThisIsJava'를 입력한다. 필자의 경우 이미 만들어 둔 것과 겹치기에 1을 붙였으니 무시하자. 위치 란에 자신이 프로젝트를 저장하고 싶은 곳을 지정해주도록 하자. 마지막으로 JDK가 JAVA를 다운로드한 것에 맞게끔 선택해준 후 [생성] 버튼을 클릭한다.
3) 프로젝트가 생성되면 좌측 프로젝트 뷰에 ThisIsJava 프로젝트가 생성된다. 우리가 만들 파일은 앞으로 src 폴더에 만들어갈 것이다. src 폴더를 우클릭 - 새로 만들기 - 패키지를 선택해주자.
4) 선택해 준다면 새 패키지 라는 창이 나타나게 되고 ch01.sec02를 입력해주고 엔터를 누르자. 이처럼 하는 이유는 필자가 공부하면서 구분되어 있는 장과 절 별로 나누기 때문이다. 만일 다르게 하고 싶은 사람들은 다르게 해도 괜찮다.
5) 패키지가 만들어졌으면 생성된 패키지를 우클릭하여 새로 만들기 - Java 클래스를 클릭한다.
6) 선택해 주었다면 Hello 라는 클래스 이름을 선언해주고 밑부분은 클래스를 선택한 상태로 엔터를 누른다.
7) 만들어 준다면 아래와 같은 소스 파일이 편집기에 열리게 된다.
이제 public class Hello { } 안에 public static void main(String[] args) { } 를 입력하게 될 텐데 전부 입력하기 귀찮은 사람을 위해 명령어 하나를 남기겠다.
아래 사진과 저럼 psvm을 입력한 후 아래 나오는 것을 선택하거나 CTRL + SPACE를 눌러주게 된다면 자동으로 문장이 완성이 된다.
- package ch01.sec02
패키지 선언이라 부르며, 이는 소스 파일이 src/ch01/sec02 패키지에 있다는 뜻이다. 컴파일 후 생성되는 바이트코드 파일도 bin/ch01/sec09 패키지에 생성된다. - public class Hello { .. }
클래스 선언이라 부르며 Hello를 클래스명이라고 한다. 클래스명은 숫자로 시작할 수 없고, 공백을 포함해서는 안 된다. 또한 소스 파일명과 대소문자가 완전히 일치해야한다.
그다음으로 나오는 중괄호 { .. }를 클래스 블록이라고 하며, 여기에는 클래스의 정의 내용이 작성된다.
참고로 Hello는 클래스명(= 소스 파일명)이다. - public static void main(String[] args) { .. }
main() 메소드라고 부른다. 그리고 중괄호 { .. }를 main() 메소드 블록이라고 한다. 바이트코드 파일을 실행하면 이 main() 메소드 블록이 실행된다. 그래서 main() 메소드를 프로그램 실행 진입점(entry point)이라고 부른다.
참고로 main은 메소드 명이다.
8) 다음과 같은 명령어를 메소드 블록 안에 작성한 후 실행해보도록 하자.
package ch01.sec02;
public class Hello {
public static void main(String[] args) {
System.out.println("Hello, Java");
}
}
참고로 실행은 화면에 보이는 초록색 화살표를 눌러주면 된다.
9) 실행을 해주었다면 Console 뷰에 다음과 같이 나타난다.
'Language > Java' 카테고리의 다른 글
[Java] 키보드 입력 데이터를 변수에 저장 (0) | 2022.10.04 |
---|---|
[Java] 변수 사용 범위와 콘솔로 변수값 출력 (0) | 2022.09.28 |
[Java] 타입 변환 (0) | 2022.09.27 |
[Java] 변수에 대한 이해_2 (논리, 문자열 타입) (1) | 2022.09.21 |
[Java] 변수에 대한 이해_1 (정수, 문자, 실수 타입) (2) | 2022.09.20 |