前言:
代码仓库的分类:
一、成品代码仓库:
1.github
2.gitlab
3.gitee
4.其它
二、制品仓库代码:
1.JFrog
2.Sonatype
3.jitpack
4.其它
区别:公司的整体项目一般会上传到成品仓库的私有库,需要花钱买私有库。如果你是学生一般用成品库的公有库就可以,因为免费的,但是别人可以看到你的代码,不过也没关系,因为学生的代码没有商业机密。制品库的作用就是保管你的底层框架代码。
如:implementation 'com.lzy.net:okgo:3.0.4',这样我们只需要在项目中的gradle中依赖即可用,非常方便。
这里我讲的是手段将框架代码上传到JFrog制品仓库步骤,如果公司想要自动化上传到私有制品库,需要运维人员搭建相关环境。
1.注册jcenter账号
(注意:国内的邮箱不能注册,请使用outlook,谷歌等邮箱,如果你用github登录,但github的账号也是国内邮箱时也登录不了)
a.如果是以个人名义使用:访问https://bintray.com/signup/oss注册。
b.如果是给公司使用:访问https://bintray.com/signup注册。
2.注册完并登陆后进入个人主页,在jcenter创建maven仓库( maven Repostitory)如下图:
3.在自己刚刚创建的仓库下创建Package,如下图:
4.配置自己编写框架信息如下:
a.在project的build.gradle的dependencies中:
classpath 'com.novoda:bintray-release:0.5.0'
b.在框架module的build.gradle中添加:
apply plugin: 'com.android.library'
//上传到jcenter时所需插件
apply plugin: 'com.novoda.bintray-release'
android {
.....
}
buildTypes {
...
}
lintOptions {
abortOnError false
checkReleaseBuilds false
}
}
publish {
repoName = 'GdAndroidLibrary'//填写自己创建的远程仓库名字,不指明,默认是上传到maven
userOrg = '....'// 这里填jcenter账户或用户名
//假如库包名为com.goldensoft.goldenlibrary时,一般最好groupId为:com.goldensoft,
// artifactId为:goldenlibrary且后者要与jcenter上创建的包名一致。
groupId = 'com.goldensoft'// 库的包名
artifactId = 'goldenlibrary'// library的名字,要与jcenter自己创建的package name一致
version = '1.0.4'// 版本
description = '....'//库的描述
website = "..."//库所在project的git地址,可不填
}
tasks.withType(Javadoc) {
options {
options.addStringOption('Xdoclint:none', '-quiet')
options.addStringOption('encoding', 'UTF-8')
options.addStringOption('charSet', 'UTF-8')
}
}
dependencies {
......
}
注意build.gradle里面的配注,同时如下图:
5.获取个人jcenter的API Key如下图:
6.开始上传
回到as工具界面,打开Terminal控制台输入以下代码(先安装git工具):
gradlew clean build bintrayUpload -PbintrayUser=userOrg(jcenter账号名) -PbintrayKey=apikey -PdryRun=false
上传需要一段时间请耐心等待,当显示build successful 是表示成功。
7.提交审核
回到网页打开仓库下你创建的package name下点击下图:
填写完成直接Send,一般一天之后就会审核通过,通过后项目的右下角的Add to JCenter 按钮就会消失!
然后我们选择左下角的 Gradle 选项 ,就会看到我们想要的东西。
8.框架升级
当你的框架修改后需要上传新的版本时,先修改build.gradle里的版本。
publish {
version = '1.0.4'// 版本
}
然后继续在as工具界面,打开Terminal控制台输入那句代码,成功后立刻就可以在jcenter中看到新版本了。
结语:
这里部分借签了:### http://blog.csdn.net/qq_23179075/article/details/71123452