필자의 최선의 방법은 Project-B를 로컬 Maven 저장소 (파일 시스템의 디렉토리)에 라이브러리로 게시하는 것입니다. 물론 원하는 경우 공개 저장소에 게시 할 수도 있습니다.
/path/to/repo
에 그러한 로컬 저장소를 생성한다고 가정하면 다음과 같이 할 수 있습니다.
프로젝트-B의 경우
이 gradle.properties
정의 일부 변수에서
: 당신의 settings.gradle
에서
pName=your-project-name
pGroup=your-group-name
pVersion=1.0.0
이 프로젝트 이름 설정 : 당신의 build.gradle
에서
rootProject.name = pName
을 받는다는 플러그인을 적용 :
apply plugin: 'maven'
들어
gradle clean uploadArchives
를 사용
uploadArchives {
repositories {
mavenDeployer {
repository(url: file://localhost/path/to/repo)
}
}
}
당신은 다음 저장소에 프로젝트를 업로드 할 수 있습니다 : 또한
group = pGroup
version = pVersion
는, 업로드 작업을 정의 :
은 다른 파일에서이 변수를 설정 프로젝트 -A
로컬 r 추가
repositories {
maven {
url /path/to/repo
}
mavenCentral()
}
이 그런 다음 프로젝트-B에 종속성을 추가 : 받는다는 저장소의 목록에 epository, 그것 뿐이다
dependencies {
compile 'your-group-name:your-project-name:1.0.0'
}
작업을 실행할 때 자동으로 프로젝트-B의 jar 파일을 끌어한다 프로젝트-A 그런 당신이 프로젝트-B의 소스를 원하는 경우
가 선택적으로 소스를
을 게시 gradle build
또는 gradle eclipse
는 m에 포함 당신의 IDE가 라이브러리의 소스 코드를 표시 할 수 있도록 아웬 저장소, 당신의 build.gradle
이 추가 :
task sourcesJar(type: Jar, dependsOn: classes) {
classifier = 'sources'
from sourceSets.main.allSource
}
artifacts {
archives sourcesJar
}
프로젝트 B에서 항아리를 생성하고 메이븐 저장소에 게시합니다. jar을 생성하는 것은 gradle의 기본 설정이며, 게시물 (실제로는 두 개)이있어 인위적인 내용을 저장소에 게시 할 수 있습니다. Maven 저장소에서 다른 라이브러리를 사용하기 때문에 A에서 B를 사용합니다. –