본문 바로가기
반응형

Maven & Gradle6

Gradle5 -> 6 마이그레이션 최근 팀에서 운영중인 프로젝트의 Gradle 버전을 6으로 올리게 되었습니다. 사유는 여러가지가 있는데요. 점점 Spring Boot 최신 버전들이 최소한으로 요구하는 Gradle 버전이 높아지고 있고 Spring Boot 2.4는 Gradle 5.6.x 버전만 혹은 6.3 이상의 버전만 지원합니다. Gradle 7.0이 곧 나올 예정 증분 컴파일 등의 성능 개선 Gradle 5.6에선 21초, Gradle 6.0에선 0.5초 등등 여러 이유로 슬슬 올려야하는 시점이 되었습니다. Gradle 6으로 업그레이드에 관해서는 아래 2개의 글이 좀 더 상세하게 나와있으니 참고해주시면 좋습니다. Gradle 6 Release Notes Gradle 5.x to 6.0 Migration Guide 이 글은 상황에 .. 2020. 12. 10.
Gradle 멀티 모듈에서 TravisCI & Coveralls 연동 기존의 Gradle + SpringBoot + Travis CI + Coveralls + 텔레그램 연동하기가 일반 Gradle 프로젝트를 다루기 때문에 Gradle Multi Module 프로젝트에서는 Coveralls를 그대로 적용할수가 없었습니다. 그래서 이번 시간에는 Gradle Multi Module에서 Coveralls를 연동하는 방법을 소개 드립니다. 모든 코드는 Github에 있으니 참고하시면 됩니다. 적용 앞서 소개드린 일반 Gradle 프로젝트에서 Travis CI & Coveralls 연동하기를 이미 해보셨다는 가정하에 시작합니다. 만약 아직 진행하지 않으셨다면, 본인의 멀티모듈 프로젝트에 해당 과정을 먼저 진행해보세요! 여기서는 멀티모듈 구조를 만드는 방법은 소개하지 않습니다. 이미 .. 2018. 3. 12.
Gradle + SpringBoot + Travis CI + Coveralls + 텔레그램 연동하기 최근에 개인프로젝트를 진행하면 무조건 진행하는 것이 바로 CI 연동입니다. 지속적으로 통합 빌드/테스트가 된다는게 개인 프로젝트에서는 정말 큰 도움이 됩니다. 개인프로젝트에서 CI연동을 하면 다음과 같은 작업이 자동화됩니다. 하나의 기능을 수정 혹은 추가 후 Git Push -> Travis CI에서 통합 빌드 및 테스트 -> Coverall에서 테스트 커버리지 관리 -> 텔레그램으로 CI 결과 알람 물론 여기서 AWS CodeDeploy나 다른 CD 툴을 사용한면 배포까지 자동화 시킬수 있습니다. 관련된 내용은 스프링부트로 웹 서비스 출시하기 - 6. TravisCI & AWS CodeDeploy로 배포 자동화 구축하기를 참고해보세요! 앞서 스프링부트로 웹 서비스 출시하기 시리즈에서 CI/CD 환경을 .. 2018. 3. 10.
Java 라이브러리 maven 저장소에 등록하기 안녕하세요? 이번 시간엔 Java 라이브러리 maven 저장소에 등록하는 방법을 소개드리려 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 본인이 만든 Java 라이브러리를 Maven Repository에 등록하고, 이를 여러 프로젝트에서 활용하고 싶으신 분들이 계실것 같습니다. 저 역시 이번에 그런 경우가 생겨, 직접 진행하고 정리해보았습니다.본문Gradle로 진행하는 방법이 Maven보다 과정이 더 복잡하단 생각에 Maven으로 진행하겠습니다. (전 Maven보다는 Gradle을 선호합니다..) 등록할 라이브러리가 Maven .. 2017. 6. 15.
Gradle 멀티 프로젝트 관리 안녕하세요! 이번 시간에는 아시는 분들은 거의다 아시는(!?) Gradle을 이용한 멀티 프로젝트(모듈) 관리에 대해 소개하려고 합니다. 모든 코드는 Github에 있으니 참고하셔서 보시면 더 좋으실 것 같습니다. 공부한 내용을 정리하는 blog-code와 세미나+책 후기를 정리하는 review, 이걸 모두 정리하는 블로그가 있습니다.) 대부분의 서비스는 단일 프로젝트로 구성되는 일이 거의 없습니다. 아무리 작게 구성해도 일정 수준 이상의 트래픽을 감당하려면 사용자와의 접점을 담당하는 서버(이하 web프로젝트라고 하겠습니다.), DB와의 접점을 담당하는 서버(api프로젝트라 칭하겠습니다.)로 구분하여 구성하게 됩니다. 이럴 경우 고민이 되는 것이 그럼 web과 api 모두에서 사용되는 클래스들은 어떻게 .. 2017. 2. 19.
Gradle로 Build 후 원격서버 war 전송하기 Gradle task 적응하기 maven이나 gradle와 같은 build 툴 중 하나는 익숙해져야겠다는 생각에 이것저것 불편했던 사항들을 해결하면서 공부하려고 한다. Gradle 그레이들 철저 입문국내도서저자 : 이마이 마사노부,하야시 마사토시,스에 노부히로,와타비키 타쿠마 / 김완섭역출판 : 길벗 2015.12.28상세보기 처음은 Build -> scp로 war전송이다. Build 후 SCP로 원격서버에 빌드파일 전송하기 CI (젠킨스 or 허드슨) 도입X + 망분리 상황에서는 배포가 여간 귀찮은게 아니다. 특히 망 분리로 배포서버로 다이렉트로 접근할 수가 없어 인터넷 PC - > 중간 서버 -> 내부망 PC -> 배포 서버 과정을 거쳐 war/jar를 전송해야만 한다.(으아아아앙ㅠㅠㅠ) 보안 때문에.. 2016. 10. 14.

728x90
반응형