项目开发中开发一个Library库的时候,可以选择发布到远程的Maven仓库内,这样使用者就可以通过简单的配置实现远程依赖,而无需关系具体的库文件,常规的实现是可以发布到公共的Maven 、 Jcenter ,但是账号申请和注册程非常繁琐,今天来学习一下怎么将github作为Maven仓库,并且实现Maven远程依赖
1.创建一个存储我们依赖库的github项目 , 注意选择Public类型,项目名可以取任意名。
2.在需要上传的
Library项目的gradle文件中添加如下配置
plugins {
id 'java-library'
id 'org.jetbrains.kotlin.jvm'
// 必要
id 'java-gradle-plugin'
id 'com.gradle.plugin-publish' version '1.1.0'
}
group = 'com.resourcesopt.plugin'
version = '1.0-test06'
gradlePlugin {
plugins {
simplePlugin {
// 插件id
id = 'resourcesopt'
// 插件具体的实现类
implementationClass = 'com.resourcesopt.plugin.ResourcesOptPlugin'
}
}
}
publishing {
repositories {
maven {
// 任意名称都可以
name = 'Maven'
// github Maven 项目 clone 到本地的路径 , 表示将打包后的数据文件发布到该目录下
url = '../../Maven'
}
}
}
// 源代码一起打包,如不开源,不需要添加一下代码
task sourcesJar(type: Jar) {
from sourceSets.main.allSource
archiveClassifier.set('sources')
}
- 点击
publish按钮打包上传到指定的本地Maven项目下, 并git提交Maven项目
- 使用方式如下
// 项目根目录 build.gradle
repositories {
...
// 添加依赖地址 格式如下 https://raw.githubusercontent.com/用户名/项目名/分支名
maven { url 'https://raw.githubusercontent.com/eric-lian/Maven/master' }
}
dependencies {
// 引入插件 发布插件的 gradle 配置文件内 group : Library 库名 : version
classpath "com.resourcesopt.plugin:ResourcesOpt:1.0-test06"
}
// app 主工程目录 apply plugin: id
apply plugin : "resourcesopt"