我正在开发一个包含以下模块的库:
模块abstractlibrary和implementationlibrary是两个库模块。 Implementationlibrary依赖于abstractlibrary,app依赖于abstractlibrary和implementationlibrary模块。
我的想法是使用应用程序模块开发我的库,然后将库模块发布到repo(现在是本地),并在商业应用程序中使用它们。
我怎样才能做到这一点?
我尝试了很多东西,但无法使它发挥作用。
在abstractlibrary模块的build.gradle文件的末尾:
1)
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'
}
}
apply plugin: 'com.android.library'
apply plugin: 'com.github.dcendents.android-maven'
2)
apply plugin: 'maven'
group = 'com.cargo.sbpd'
version = '0.0.2'
uploadArchives {
repositories {
mavenDeployer {
repository(url: mavenLocal().getUrl())
}
}
}
这个给了我这个错误:
无法发布配置'存档'
无法写入文件'C:[...] \ ProjectFolder \ abstractlibrary \ build \ poms \ pom-default.xml'
在商业应用中,我不确定要添加什么,但我尝试了这个:
在存储库中,我添加了mavenLocal():
repositories {
maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
maven { url "http://dl.bintray.com/jjhesk/maven" }
maven { url "https://jitpack.io" }
maven { url 'https://maven.fabric.io/public' }
mavenLocal()
}
在依赖项中:
dependencies {
compile 'com.cargo.sbpd:sbpd:0.0.2'
// I also tried with 'com.cargo:sbpd:0.0.2', 'com.cargo.sbpd.sbpd:sbpd:0.0.2' etc...
}
.m2文件夹似乎包含aar文件。
答案 0 :(得分:0)
我不确定我是否回答了您的问题,但tutorial帮助我通过jcenter和Maven Central分发我的第一个Android库。它还讨论了如何正确地创建库文件aar,pom等...