GitHub Packages是什么
GitHub Packages是GitHub提供的一种包管理服务,可以在里面发布依赖包,容器镜像,可以对其设置访问权限,为特定用户在项目中提供访问使用。
token
需要在Settings>Developer settings>Personal access tokens里创建一个tokens,可以访问repo,对packages有读写权限。注意这里需要记下生成的token,后面会用到。
在gradle配置文件:~/.gradle/gradle.properties(如果没有这个文件就新建一个)中增加账号配置:
gpr.user=你的GitHub用户名
gpr.key=上面创建的token
上传jar
修改build.gradle文件,增加打包上传配置:
plugins {
id 'java'
id 'maven-publish'
}
...
publishing {
repositories {
maven {
name = "GitHubPackages"
url = "https://maven.pkg.github.com/phantom0103/elem-open-sdk"
credentials {
username = project.findProperty("gpr.user")
password = project.findProperty("gpr.key")
}
}
}
publications {
gpr(MavenPublication) {
from(components.java)
}
}
}
需要注意的是,上传的url里面都要小写。
最后发布:gradle publish
,发布成功后,可以在个人主页的Packages中看到这个包。
如何使用
修改build.gradle配置,首先需要在repositories中加上这个仓库:
maven {
url 'https://maven.pkg.github.com/phantom0103/elem-open-sdk'
credentials {
username 'GitHub用户名'
password 'GitHub密码'
}
}
然后引入依赖:
implementation group: 'io.github.phantom0103', name: 'elem-open-sdk', version: '2.1.0'
这里注意,由于需要配置GitHub账号敏感信息,也最好是配置在gralde.properties中,GitHub Packages并不是像maven那种公开的仓库,是针对特定组织使用的。