이미 이와 같은 문제? 를 겪고 이 글을 찾아온 분들이 대부분이겠지만 우선 이 글을 쓴 목적에 대해서 알아보자
Eclipse에서 자바 프로젝트를 생성하면 다음과 같이 생성됨
src 안에 패키지들을 추가해서 이런 저런 자바 프로그램을 개발함
그리고 어느 IDE든 Spring Boot 로 Gradle을 사용하는 SpringFramework 프로젝트를 생성하면 다음과 같이 생성됨
src/main/java 안에 패키지들을 추가해 이런 저런 API들을 개발함
이번에는 Eclipse 내지는 STS4 를 사용해 Gradle을 사용하는 자바 프로젝트를 만들자
! 잠시 !
다른 블로그의 글들을 보면 컴퓨터에 Gradle을 다운 받고 gradle init 명령으로 Gradle 자바 프로젝트 를 만드는 글이 있는데 그런 경우는 개발툴을 활용하고 있지 못하는 경우임
세세하게 핸들링을 하려면 Gradle을 다운 받아 gradle 명령을 사용해서 프로젝트를 생성하지만 우리는 세세하게 핸들링을 할 필요까지는 없음
자바 프로그램을 개발 하는 방법이 여러 가지가 있겠지만 개발툴 없이 메모장으로 자바 코드를 작성하고 cmd 창에서 java 명령을 사용해서 직접 컴파일하고 실행시켜보면서 개발할 수도 있음
그러나 이렇게 개발하면 굉장히 불편하기 때문에 개발툴을 사용하는 것
이런것처럼 이클립스를 사용해서 편하게 Gradle 자바 프로젝트를 생성할 수 있는데 불편하게 Gradle을 다운 받고 gradle 명령을 사용해 프로젝트를 생성할 필요 없음
개발툴 안에서 마우스 몇 번 클릭이면 Gradle 자바 프로젝트를 만들 수 있음
Eclipse, STS4로 Gradle 자바 프로젝트를 만들려면 이클립스에 [ Buildship Gradle Integration 3.0 ] 이 설치되있어야함
개발툴 내 > [ Help ] > Eclipse Marketplace ] > gradle 검색 > Buildship Gradle Integeration 3.0 이 설치 되어있는지 확인하자
설치가 되어있지 않다면 굵은 글씨로 [ Install ] 버튼이 활성화 되어있고 설치 되어있다면 아래 이미지처럼 기울어진 채로 [ Installed ] 버튼이 비활성화 되어있을 것
설치가 되어있지 않다면 [ Install ] 버튼 눌러서 설치하면 됨
설치가 되어있는걸 확인한 후 Eclipse Marketplace 창은 닫고 [ Ctrl + N ] > gradle 검색(1) > Gradle Project 선택(2) > [ Next ] 클릭(3)
그러면 다음과 같이 소개 페이지가 보이는데 무시하고 [ Next ] (1) 클릭
생성할 프로젝트명, 설정 등을 하는 화면이 나오는데 우선 프로젝트명(1)은 demo로 입력하자
그 후 [ Next ] (2) 클릭
프로젝트와 관련된 여러 설정을 하는데 우선은 이 상태 그대로 넘어가자
[ Next ] (1) 클릭
마지막으로 만들어질 프로젝트 스펙이 나옴
(1). 프로젝트가 만들어질 위치
(2). 프로젝트에서 사용할 Gradle 버전
(3). 프로젝트에서 사용할 JDK의 위치
프로젝트 스펙을 확인 한 후 [ Finish ] (4) 클릭
이제 Gradle 자바 프로젝트가 만들어졌음
만들어진 Gradle 자바 프로젝트를 확인하기 전에 다시 한번 여기까지 온 과정을 떠올려보자
(1). 그냥 자바 프로젝트를 생성했을 때 프로젝트 구조
(2). Spring Boot를 사용해 Gradle을 사용하는 SpringFramework 프로젝트 구조
이번에는 방금 만든 Gradle 자바 프로젝트 구조를 보자
...?
우린 분명히 Gradle 자바 프로젝트를 만들었는데 구조가 왜 이럴까?
Gradle 6.6.1 이후 버전부터는 자바 프로젝트를 만들면 [ 프로젝트명 ] 으로 프로젝트가 만들어지고(1) 이 프로젝트와 연결된 lib 프로젝트가 하나 더 만들어짐(2)
그리고 이 lib 프로젝트가 자바 프로젝트임
Gradle 6.6.1 이후 버전부터는 gradle 명령으로 프로젝트를 생성할 때 세세하게 핸들링을 할 수 있도록 Gradle 프로젝트의 구조가 바뀐 것
즉 (1)번 프로젝트는 자바 프로젝트에 적용될 gradle 설정이 들어있는 프로젝트이고 (2)번 프로젝트가 자바 프로젝트임
여기서 settings.gradle 파일 (1) 을 열어보자
이때 include('lib') (2) 가 보이는데 여기를 통해 실제 자바 프로젝트가 어떤 것인지 찾을 수 있음
상황에 따라서는 rootProject.name 값과 include 를 함께 참고해야 실제 자바 프로젝트가 어떤 것인지 찾을 수 있으니 [ Package Explorer ] 내 프로젝트 이름과 함께 대조해보면 됨
lib 프로젝트 > src/main/java > 패키지 안에 아래와 같이 샘플 코드를 추가해 실행시켜보자
이렇게 lib 프로젝트에 자바 프로그램을 개발하면 되지만 "난 이 구조가 너무 신경쓰인다! 하나로 통합된 구조의 프로젝트를 만들고싶다!" 라는 분은 Gradle의 버전을 6.6.1 이하로 낮추면 됨
이제 [ demo ] 프로젝트를 지워보자
그럼 지금까지 일반적인 자바 프로젝트를 지울 때와 다른 선택지(1)가 보임
이를 통해서 또 두 프로젝트가 연결되어있다는걸 확인할 수 있음
하나로 연결된 두 프로젝트를 컴퓨터에서 아예 지우고 [ 하나로 통합된 구조의 Gradle 자바 프로젝트 ] 를 만들 것이기 때문에 (2) 번을 체크한 후 지우자
다시 [ Ctrl + N ] > gradle 검색 > Gradle Project 선택 > 프로젝트명을 입력하는 단계까지 오자
프로젝트명은 전과 마찬가지로 demo 로 하고 [ Next ] (1) 클릭
Gradle 설정 화면에서 다음과 같이 [ Override workspace settings ] (1) 를 클릭해 지금 만들 프로젝트의 Gradle 버전을 바꾸자
Gradle 버전은 (2) 에서 바꿀 수 있으며 6.6.1 버전 이하로 선택하자
단! 이때 Gradle 6.6.1 이하 버전은 JDK 11 버전 이하로 선택해야함
그래서 (3) 과 같이 JDK 11 이하 버전의 디렉토리 경로를 지정해주자
그 후 [ Next ] (4) 를 눌러 프로젝트 스펙을 확인하고 프로젝트를 만들어도 되고 바로 [ Finish ] (5) 를 눌러 프로젝트를 만들어도 됨
이제 우리의 마음을 편안하게? 해줄 구조로 자바 프로젝트가 만들어졌음
Gradle 최신 버전을 사용해서 둘로 나눠진 프로젝트이든 Gradle 6.6.1 이하 버전을 사용해서 만든 프로젝트이든 자바 프로젝트이므로 어느것을 사용해도 상관 없음
<< 참고 >>
- https://jiurinie.tistory.com/123
'기타' 카테고리의 다른 글
롬복 사용 / 자주 사용하는 롬복 애너테이션 정리 (Lombok Annotation ) - 생성자 관련 애너테이션 (0) | 2023.06.15 |
---|---|
이클립스 디컴파일러 설치하기 ( Eclipse Decompiler ) (1) | 2023.06.14 |
롬복 ( Lombok ) 이란? / 롬복 설치 및 적용 (0) | 2023.06.14 |
이클립스 또는 sts와 깃허브 레파지토리 연동하기 (0) | 2023.03.13 |
내 컴퓨터에서 Virtualbox의 서버로 접근하기 (0) | 2023.03.09 |