plugins {
id 'com.android.library'
id 'kotlin-android'
id 'maven-publish'
}
然后在文件的最后,添加如下内容:
// 用于打包源代码的任务
task androidSourcesJar(type: Jar) {
archiveClassifier.set('sources')
from android.sourceSets.main.java.srcDirs
}
// 用于把aar打包到maven仓库的任务
afterEvaluate {
publishing {
publications {
release(MavenPublication) {
from components.release
artifact androidSourcesJar
groupId = 'cn.android666.contextholder' // 库的组织,使用域名表示
artifactId = 'contextholder' // 库名称
version = '1.1.1' // 库版本
}
}
repositories {
maven {
allowInsecureProtocol = true // 仓库默认不允许使用非https协议,所以这里设置为允许
url 'http://192.168.1.251:8081/content/repositories/android_repositories/' // 公司maven仓库地址
credentials {
username 'even' // maven仓库账号
password '123456' // maven仓库密码
}
}
}
}
}

按如上图的方式操作即可,第3步为选择你这个publish任务所在的模块。第4步输入publish然后按回车,这样发布的aar是带源码的,即打开类时可以看到源代码。
**使用生成的aar**
在settings.gradle中要先把公司的maven仓库地址设置好,如下:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
// 公司仓库
maven {
allowInsecureProtocol = true // 仓库默认不允许使用非https协议,所以这里设置为允许
url 'http://192.168.1.251:8081/content/repositories/android_repositories/'
}
}
}
rootProject.name = "ContextHolderLib"
include ':app'
include ':ContextHolder'
## 最后
**本文在[开源项目GitHub中](https://github.com/a120464/Android-P7/blob/master/Android%E5%BC%80%E5%8F%91%E4%B8%8D%E4%BC%9A%E8%BF%99%E4%BA%9B%EF%BC%9F%E5%A6%82%E4%BD%95%E9%9D%A2%E8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)已收录,里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中...**
**目前已经更新的部分资料,需要的自己取:**


