빌드 자동화 도구
-
Gradle이 무엇을 편리하게 해주는가?빌드 자동화 도구/Gradle 2024. 10. 23. 14:27
Gradle이 의존성 관리를 해주기에 편하게 프로젝트를 만들어왔는데요도대체 의존성 관리라는게 무엇인지? Gradle이 무엇을 해주는지 한번 보려고 합니다. 1. 수동으로 의존성 관리해보기간단한 프로젝트를 하나 만들어서 로그를 찍어봅니다.getPerson을 사용해서 Person 객체를 사용해서 로그를 찍었습니다. 이번에는 주어진 데이터를 기반으로 Person 객체를 만든 뒤, 로그를 찍어봅니다.json을 위해서 'Gson' 이라는 라이브러리를 사용하면 편리하니 사용하려고 합니다. Gradle을 사용한다면 dependencies 블럭에 코드 한 줄 추가해주면 끝나는 일이었겠지만,이번에는 그레들 없이 가보겠습니다. 구글에서 Gson을 검색해서 github을 찾아갑니다. 중간에 보면 gradle 혹은 ma..
-
Github Packages로 private maven repository 만들기빌드 자동화 도구/Gradle 2024. 7. 25. 16:39
업무 중에 두 프로젝트에서 공통된 부분을 어떻게 관리할 수 있을지 고민하던 중에 선택한 방법을 공유해봅니다. 글은 아래와 같은 순서로 진행됩니다.1. 작업을 시작한 배경2. 어떻게 개선할 것인가3. 로컬환경에서 publish 하기4. Github Packages 사용해서 gradle registry 만들기5. 라이브러리 적용하기6. 빈등록 이슈 해결7. CI/CD 파이프라인 생성 (optioanl) 1. 작업을 시작한 배경회사 코드를 바로 쓸 수 없으니, 비슷한 상황을 가정해보겠습니다저는 Greeting Project를 만들고 있습니다. 초기에는 간단한 기능들로 구성된 'Simple Server'를 구현해서 프로젝트를 운용 중이었습니다. 일을 하다보면 언제나 그렇듯.. 일정이 얼마남지 않은 ..
-
Multi Module Project 생성하기빌드 자동화 도구/Gradle 2024. 4. 8. 03:34
프로젝트 진행 중에 서비스 별로 레포지토리를 생성하여 관리하니, 공통으로 들어가는 코드들의 중복이 발생하는 것을 느낄 수 있었습니다. 그래서 프로젝트를 멀티모듈의 형태로 바꾸고 한 개의 레포지토리에서 관리해야겠다고 생각하던 차에, 실제 프로젝트에 적용하기에 앞서서 연습삼아 한번 멀트 모듈 프로젝트를 만들어보겠습니다. 이 프로젝트는 블로의 Junit에 사용될 프로젝트 입니다 아래의 글은 다음의 순서로 작성되었습니다. 1. 시작하기 전에 2. setting.gradle 설정하기 3. build.gradle 설정하기 4. 동작 확인하기 1. 시작하기 전에 현재 디렉토리 구성은 이렇습니다. /Junit/concurrency /concurrency 경로에는 테스트 작성을 위해서 스프링부트 프로젝트를 생성해 두었습..