Vs code로 Java 개발환경 셋팅해주려고 JDK 버전 여러번 설치한 흔적들...
들어가며
이번 포스팅의 목적은 Vs Code에서 Java 개발환경을 셋팅하는 방법에 대해서 포스팅하도록 하겠다.
생각보다, 설정해주는 방법이 까따로웠고 Java 프로그래밍 언어에 대해서 깊이있게 되돌아 보며, 생각해볼 수 있었던 뜻깊은 경험이 되었다.
VS Code 확장 패키지 - Extension Pack for Java 설치
Vs Code에서 지원하는 확장 프로그램에서 Extension Pack for Java를 설치한다.
이는, Java의 실행 디버거 및 컴파일러 역할인 Java Virtual Machine을 이용할 수 있도록 Vs Code 상의 확장 프로그램이다.
이 확장 프로그램을 토대로 JDK를 설정해줌으로써 Java 개발을 진행할 수 있도록 설정한다.
# JDK는 자바 개발 키트
JDK는 자바 개발 키트로, JVM (Java Virtual Machine)을 내장하고 있다.
그래서, JDK를 Vs Code에 설정만 해준다면, Java를 컴파일 할 수 있게 된다.
Java.Home 설정을 JDK 경로로 추가 - setting.json 파일
다음과 같이 JDK 경로를 추가해주면 된다.
그리고, 파일을 저장 후 reload를 수행하면 성공적으로 Java 개발환경을 셋팅을 할 수 있다.
난, JDK 경로명을 잘못입력해서 Vs Code에서 해당 JDK를 이용할 수 없다고 에러를 제공해줬고,
JDK 버전 문제인 줄알고 Java 17 -> Java 19 버전까지 다운받아가며, 경로를 수정했다.
하지만, 결국엔 JDK 경로를 /Contents/Home 까지 지정해줘야하는데, 그러지 않아서 발생한 에러를 겪었다.
# Vs Code Java 개발환경 셋팅하면서 느낀점
에러를 해결할 때, 당황에서 아무거나 하는 것보다 차분히 객관적으로 상황을 인지 후 추론하니, 쉽게 해결 할 수 있었다.
JDK를 새로 설치하고, Library/Java/JavaVirtualMachine/ 폴더에 추가하니깐, 자동으로 맥OS의 환경변수로 바뀐다는 사실을 알게 되었다. 환경변수는 로컬 시스템의 전역변수로써 JAVA_HOME에 Jdk 경로가 기입되어져 있다.
그래서, JAVA_HOME 환경변수로 Java 시스템을 사용하게 된다.
개발환경 셋팅하며 겪은 문제
setting.json의 JDK 경로 설정
급하게, settiong.json 파일을 다뤄가지고, 구글링으로 셋팅 코드를 구성했다.
그치만, 블로그마다, 다른 셋팅법이 있었고,
다른 셋팅들도, 똑같이 동작되어지는 궁금하다.
# 테스트 결과
가능하다.
결국, JDK 경로를 잘못지정해줘서 확장 프로그램이 읽어드리지 못한 것 같다.
Java Project 위치 재구성 시 실행에러
Java Project 폴더는 위치 재구성을 하면, Class 파일을 읽어들이지 못하는 에러가 발생한다.
그래서, GitHub에 코드를 올려뒀기에, 다시 Clone해서 프로젝트를 실행하면, 정상적으로 동작한다.
Java Project 폴더는 위치를 리팩토링하면 Class 파일을 읽어들이지 못하는 건가?
이 부분에 대해선 시간이 될 때 질문 후 기록하도록 하겠다.
아래 블로그를 참조해도, 실행에러가 발생했다.
해결법은 프로젝트 폴더 삭제 후 Github 레포에 올려둔 프로젝트 폴더 다시 클론해서 받아온 후 실행했더니,
정상적으로 동작한다.
에러 원인은 모르겠음... 질문질문..
# 해결
프로젝트를 저장하는 폴더 네이밍을 한국어 & 띄어쓰기를 혼용해서 사용해서 클래스를 인식할 수 없었다.
따라서, Java 프로젝트 위치를 바꿔도 정상적으로 동작은 하되, 프로젝트를 보관하는 폴더의 네이밍이 정상적이지 않는 폴더명으로 해두면,
Java 프로젝트를 읽어들이지 못한다.
이번 경험으로, 프로젝트 파일을 관리하는 폴더들은 "무조건" 컴퓨터가 읽을 수 있는 영문조합으로 해야될 것을 다짐하게 되었다.
컴퓨터도 알기 쉽고, 나도 알기 쉬운 폴더명으로 작명하자..ㅎㅎ
'CS 대학강의' 카테고리의 다른 글
[CS 1-2 | 오픈소스 SW 기초] JAVA 프로젝트를 위한 개발 리소스 정리 (0) | 2022.12.06 |
---|---|
[CS 1-2 | 아카데믹 글쓰기] 글쓰기의 마무리, 퇴고쓰는 방법 (0) | 2022.12.05 |
[CS 1-2 | 아카데믹 글쓰기] 글 수정할 때 꿀팁 (0) | 2022.11.28 |
[CS 1-2 | 오픈소스 SW 기초] Docker 8주차 (0) | 2022.11.24 |
[CS 1-2 | 아카데믹 글쓰기] 초고쓰기 실습 (0) | 2022.11.23 |