Notice
Recent Posts
Recent Comments
Link
아님말고
[gradle] library 용도 프로젝트을 local repository 배포하기 본문
여러 프로젝트에서 의존성 추가하여 사용 가능한 라이브러리 jar을 배포하는 방법을 알아보자.
[테스트 환경]
java : 17
spring boot : 2.7.10
gradle : 7.6.1
라이브러리용으로 gradle 프로젝트를 하나 만들어서 아래 내용되로 수정한다.
1.build.gradle 수정하기
plugins {
id 'java'
id 'org.springframework.boot' version '2.7.10'
id 'io.spring.dependency-management' version '1.0.15.RELEASE'
id 'maven-publish'
}
group = 'com.skt'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '17'
publishing {
publications {
mavenJava(MavenPublication) {
groupId = 'com.skt.demo'
artifactId = 'api-core'
version = '0.0.1-SNAPSHOT'
from components.java
artifact bootJar
versionMapping {
usage('java-api') {
fromResolutionOf('runtimeClasspath')
}
usage('java-runtime') {
fromResolutionResult()
}
}
}
}
}
repositories {
mavenCentral()
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
}
tasks.named('test') {
useJUnitPlatform()
}
2. 배포실행하기
윈도우 환경이라면 도스창을 열고 workspace / {프로젝트명} 으로 이동하여 아래 명령을 실행한다.
gradlew publishToMavenLocal
build successful 성공문구가 나오면 자신의 maven local repository 로 이동하여 생성된 파일을 확인한다.
C:\Users\{사용자}\.m2\repository\com\skt\demo\api-core\0.0.1-SNAPSHOT
4개의 파일이 있을 것이다.
api-core-0.0.1-SNAPSHOT.jar api-core-0.0.1-SNAPSHOT.module api-core-0.0.1-SNAPSHOT.pom api-core-0.0.1-SNAPSHOT-plain.jar |
3. 타 프로젝트에 의존성 추가하여 사용한다.
// build.gradle
repositories {
mavenLocal()
}
dependencies {
implementation '{groupId}:{artifactId}:{version}'
// 예시, implementation 'com.skt.demo.api-core:0.0.1-SNAPSHOT'
}
'빌드' 카테고리의 다른 글
[Gradle] window 콘솔에서 build 하기 (0) | 2023.03.15 |
---|
Comments