-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfeed.xml
More file actions
1 lines (1 loc) · 3.89 KB
/
feed.xml
File metadata and controls
1 lines (1 loc) · 3.89 KB
1
<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><atom:link href="https://ijmo.github.io/" rel="self" type="application/rss+xml"/><title>Jmim</title><link>https://ijmo.github.io/</link><description></description><lastBuildDate>Fri, 08 Dec 2023 01:02:17 +0900</lastBuildDate><generator>clj-rss</generator><item><guid>https://ijmo.github.io/posts/2023-12-07-manage-dependencies-with-gradle-convention-plugin/</guid><link>https://ijmo.github.io/posts/2023-12-07-manage-dependencies-with-gradle-convention-plugin/</link><title>Gradle 멀티 프로젝트에서 컨벤션 플러그인으로 의존성 관리</title><description>Multi-project Structure빠른 이해를 위해 아래처럼 구성해 보았습니다.예제 소스는 Github에 올려두었습니다.1. 버전 카탈로그버전을 관리하기 위한 libs.versions.toml 을 추가했습니다.의존 라이브러리 목록도 여기서 관리를 할 수 있으나, 저는 버전만 넣어보았습니다.2. 빌드 플러그인을 위한 프로젝트libs.versions.toml 을 읽어오도록 합니다. settings 파일 기준으로 상대경로를 입력했습니다.만들려는 플러그인에서 외부 플러그인을 사용하고 싶다면 빌드 스크립트에서 의존성을 추가해주어야 합니다. Spring Boot을 사용하기 위해 gradlePluginPortal 에 있는 spring-boot-gradle-plugin 을 추가해 주었습니다.libs.versions.toml 에서 지정한 버전을 가져왔습니다.gradle init 을 통해 프로젝트를 만들면 3가지 모델의 플러그인을 스캐폴딩 해줍니다. 파일 이름에서도 알 수 있듯이 프로젝트 공통으로 쓰이는 'common', 앱에서 쓰기 위한 'application', 라이브러리에서 쓰기 위한 'library' 로 나누어진 구조입니다.서브 프로젝트의 유형이 한 종류(앱 또는 라이브러리)이거나 모든 프로젝트가 같은 의존성을 가진다면 굳이 여러 파일로 나눌 필요없이 한 파일에 다 집어넣으면 되겠습니다.파일이름은 제 기준으로 지었으니 적절하게 바꿔서 쓰시면 되겠습니다.빌드 스크립트에서 의존성을 추가했었던 Spring Boot 플러그인을 plugins {} 안에서 apply 해주었습니다.Spring BOM(Bill of Material)을 적용하기 위해 implementation(platform()) 을 사용했습니다.여기서 dependencies {} 에 추가한 라이브러리는 resolve 되어 classpath에 추가됩니다. 서브 프로젝트에서 사용하려면 해당 프로젝트의 빌드 스크립트에서 dependencies {} 에 추가해야 합니다.라이브러리 프로젝트를 위한 플러그인 입니다.필요한 라이브러리를 dependencies {} 에 추가해주세요.3. 빌드 플러그인을 include만든 플러그인을 pluginManagement {} 을 통해 포함시켜 줍니다.서브 프로젝트도 include() 해줍니다.4. 서브 프로젝트classpath에 추가된 패키지(라이브러리) 중에 각 프로젝트에 사용할 패키지를 빌드 스크립트에 추가합니다.</description><pubDate>Thu, 07 Dec 2023 00:00:00 +0900</pubDate></item><item><guid>https://ijmo.github.io/posts/2023-11-19-gradle-8.4-multiproject/</guid><link>https://ijmo.github.io/posts/2023-11-19-gradle-8.4-multiproject/</link><title>Gradle 8.4 멀티 프로젝트</title><description>멀티 프로젝트 구성할 때 필요한 내용들 몇 가지를 정리해 보았습니다.</description><pubDate>Sun, 19 Nov 2023 00:00:00 +0900</pubDate></item><item><guid>https://ijmo.github.io/posts/2019-07-04-solving-problems-the-clojure-way/</guid><link>https://ijmo.github.io/posts/2019-07-04-solving-problems-the-clojure-way/</link><title>함수형으로 문제 해결하기 (스크린샷)</title><description>원본: 클로저(Clojure) 방식으로 문제 해결하기 by Rafal Dittwald at Clojure/Northhttps://youtu.be/vK1DazRK_a0</description><pubDate>Thu, 04 Jul 2019 00:00:00 +0900</pubDate></item></channel></rss>