Android Studio发布项目到jcenter,一行代码引入Module
2017-09-08 17:37
561 查看
转载请注明出处:
前面我们使用自己封装的okhttp项目时候,只需要app/build.gradle文件中加一行代码就能使用项目。
那是因为我之前就把封装的module提交到了jcenter服务器。所以android sutdio把从jcenter服务器把类库下载下来。
一定要注意不要注册了企业版,没法直接切换成个人版,必须要得试用期过重新注册。用我贴的链接注册就行。还有注册邮箱不能是国内163邮箱或者qq邮箱,我用的是google邮箱注册的。
登录jcenter账号,进入用户首页,点击Add New Repository按钮。
进入Add New Repository页面,Name输入框输入module名称(okhttpencapsulation),Type选择Maven。然后点击最后的Create按钮,Repository就创建成功了。
Android Studio中添加代码
项目的build.gradle中加入如下代码:
修改后效果图如下:
修改要上传的module下的build.gradle。例如我这边路径是:OkHttpEncapsulation/okhttpencapsulation/build.gradle。在文件尾部增加如下代码:
都有注释,当有时候的时候直接复制代码就行。然后修改一些值。在最后的bintray里面有从local.properties文件中获取用户名跟apikey。这是保密信息,我们不能暴露给别人,build.gradle文件我们会提交到git服务器上,但是local.properties文件不会提交。
打开OkHttpEncapsulation/local.properties文件,在尾部添加两行,这个key是我随便修改过的,是个错误的key,需要自己去替换:
user是我们注册的名字,apikey需要去jcenter官网查看。进入修改用户界面,点击左侧apikey按钮,然后输入密码就能看到了。把这个key复制到local.properties中替换掉。
gradle命令上传
上传项目到jcenter需要用到gradle命令,首先把gralde加入到环境变量。mac下加入环境变量教程,windows环境不会加入环境变量的自行搜索下:
在android studio底部有个Terminal的按钮。点击它进入Terminal界面。
输入命令:
出现BUILD SUCCESSFUL就表示成功了。
继续输入命令,提交项目到bintray:
这个命令会提示上传进度,上传到100%就成功了最后也会出现BUILD SUCCESSFUL。到了这一步你的进度条已经到了90%了,就差最后一步了。
Add to JCenter
我们提交成功了之后呢赶紧打开jcenter官网看看有没有成功。在首页点击我们的package(okhttpencapsulation)名称,在这个页面应该就能看到我们提交的项目了,点击项目进入项目详细页。
我们可以看到版本,看到gradle在线引用的代码,还能切换到Maven跟lvy方式。然后右边有个Add to JCenter,每个项目刚刚提交都必须要审核的,所以我们点击Add to JCenter去进行审核。审核成功就能一行代码引用这个module啦。
源码下载
如果你想第一时间看我的后期文章,扫码关注公众号,每周不定期推送Android开发实战教程文章…
http://blog.csdn.net/lowprofile_coding/article/details/77897300
前面我们使用自己封装的okhttp项目时候,只需要app/build.gradle文件中加一行代码就能使用项目。
compile 'com.ansen.http:okhttpencapsulation:1.0.1'
那是因为我之前就把封装的module提交到了jcenter服务器。所以android sutdio把从jcenter服务器把类库下载下来。
提交项目到jcenter
当我们做好一个轮子的时候,或者项目中有一些好的module想分享给别人用的时候,首先把代码提交到github(全球男性交友平台)上开源,但是这还不够,别人拿你的代码作为module依赖太麻烦了,比较酷的方法应该是一行代码引用。首先我们得有一个jcenter账号
这个网站注册有点坑爹,有两种方式(企业版跟个人免费版),个人版的项目必须要开源,个人注册地址如下:https://bintray.com/signup/oss
一定要注意不要注册了企业版,没法直接切换成个人版,必须要得试用期过重新注册。用我贴的链接注册就行。还有注册邮箱不能是国内163邮箱或者qq邮箱,我用的是google邮箱注册的。
上传项目到jcenter
jcenter上创建Repository登录jcenter账号,进入用户首页,点击Add New Repository按钮。
进入Add New Repository页面,Name输入框输入module名称(okhttpencapsulation),Type选择Maven。然后点击最后的Create按钮,Repository就创建成功了。
Android Studio中添加代码
项目的build.gradle中加入如下代码:
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.4.1' classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.4'
修改后效果图如下:
修改要上传的module下的build.gradle。例如我这边路径是:OkHttpEncapsulation/okhttpencapsulation/build.gradle。在文件尾部增加如下代码:
// 这里添加下面两行代码。 apply plugin: 'com.github.dcendents.android-maven' apply plugin: 'com.jfrog.bintray' // 定义两个链接,下面会用到。 def siteUrl = 'https://github.com/ansen666/OkHttpEncapsulation' // 项目主页。 def gitUrl = 'https://github.com/ansen666/OkHttpEncapsulation.git' // Git仓库的url。 group = "com.ansen.http"// 唯一包名,比如compile 'com.ansen.http:okhttpencapsulation:1.0.1'中的com.ansen.http就是这里配置的。 version = "1.0.1"//项目引用的版本号,比如compile 'com.ansen.http:okhttpencapsulation:1.0.1'中的1.0.1就是这里配置的。 install { repositories.mavenInstaller { // 生成pom.xml和参数 pom { project { packaging 'aar' // 项目描述,复制我的话,这里需要修改。 name 'okhttpencapsulation'// 可选,项目名称。 description 'okhttp project describe'// 可选,项目描述。 url siteUrl // 项目主页,这里是引用上面定义好。 // 软件开源协议,现在一般都是Apache License2.0吧,复制我的,这里不需要修改。 licenses { license { name 'The Apache Software License, Version 2.0' url 'http://www.apache.org/licenses/LICENSE-2.0.txt' } } //填写开发者基本信息,复制我的,这里需要修改。 developers { developer { id 'ansen' // 开发者的id。 name 'ansen' // 开发者名字。 email 'iprivateworkemail@gmail.com' // 开发者邮箱。 } } // SCM,复制我的,这里不需要修改。 scm { connection gitUrl // Git仓库地址。 developerConnection gitUrl // Git仓库地址。 url siteUrl // 项目主页。 } } } } } // 生成jar包的task,不需要修改。 task sourcesJar(type: Jar) { from android.sourceSets.main.java.srcDirs classifier = 'sources' } // 生成jarDoc的task,不需要修改。 task javadoc(type: Javadoc) { source = android.sourceSets.main.java.srcDirs classpath += project.files(android.getBootClasspath().join(File.pathSeparator)) // destinationDir = file("../javadoc/") failOnError false // 忽略注释语法错误,如果用jdk1.8你的注释写的不规范就编译不过。 } // 生成javaDoc的jar,不需要修改。 task javadocJar(type: Jar, dependsOn: javadoc) { classifier = 'javadoc' from javadoc.destinationDir } artifacts { archives javadocJar archives sourcesJar } // 这里是读取Bintray相关的信息,我们上传项目到github上的时候会把gradle文件传上去,所以不要把帐号密码的信息直接写在这里,写在local.properties中,这里动态读取。 Properties properties = new Properties() properties.load(project.rootProject.file('local.properties').newDataInputStream()) bintray { user = properties.getProperty("bintray.user") // Bintray的用户名。 key = properties.getProperty("bintray.apikey") // Bintray刚才保存的ApiKey。 configurations = ['archives'] pkg { repo = "okhttpencapsulation" //Repository名字 需要自己在bintray网站上先添加 name = "okhttpencapsulation"// 发布到Bintray上的项目名字,这里的名字不是compile 'com.ansen.library:circleimage:1.0.1'中的circleimage。 userOrg = 'anhui'//Bintray的组织id websiteUrl = siteUrl vcsUrl = gitUrl licenses = ["Apache-2.0"] publish = true // 是否是公开项目。 } }
都有注释,当有时候的时候直接复制代码就行。然后修改一些值。在最后的bintray里面有从local.properties文件中获取用户名跟apikey。这是保密信息,我们不能暴露给别人,build.gradle文件我们会提交到git服务器上,但是local.properties文件不会提交。
打开OkHttpEncapsulation/local.properties文件,在尾部添加两行,这个key是我随便修改过的,是个错误的key,需要自己去替换:
bintray.user=anhui bintray.apikey=ac8137c9138a8b49a18a323260041fcf1f75a6f
user是我们注册的名字,apikey需要去jcenter官网查看。进入修改用户界面,点击左侧apikey按钮,然后输入密码就能看到了。把这个key复制到local.properties中替换掉。
gradle命令上传
上传项目到jcenter需要用到gradle命令,首先把gralde加入到环境变量。mac下加入环境变量教程,windows环境不会加入环境变量的自行搜索下:
http://blog.csdn.net/u013424496/article/details/52684213
在android studio底部有个Terminal的按钮。点击它进入Terminal界面。
输入命令:
gradle install
出现BUILD SUCCESSFUL就表示成功了。
继续输入命令,提交项目到bintray:
gradle clean build bintrayUpload
这个命令会提示上传进度,上传到100%就成功了最后也会出现BUILD SUCCESSFUL。到了这一步你的进度条已经到了90%了,就差最后一步了。
Add to JCenter
我们提交成功了之后呢赶紧打开jcenter官网看看有没有成功。在首页点击我们的package(okhttpencapsulation)名称,在这个页面应该就能看到我们提交的项目了,点击项目进入项目详细页。
我们可以看到版本,看到gradle在线引用的代码,还能切换到Maven跟lvy方式。然后右边有个Add to JCenter,每个项目刚刚提交都必须要审核的,所以我们点击Add to JCenter去进行审核。审核成功就能一行代码引用这个module啦。
源码下载
如果你想第一时间看我的后期文章,扫码关注公众号,每周不定期推送Android开发实战教程文章…
Android开发666 - 安卓开发技术分享 扫描二维码加关注
相关文章推荐
- Android Studio发布项目到jcenter,一行代码引入Module
- android studio创建代码库分上传到jcenter,使大家一行代码引用
- Android Studio 发布开源项目到Jcenter重要步骤记录
- Android Studio 发布开源项目到Jcenter重要步骤记录
- 使用Gradle发布开源项目到Jcenter:(三)、android studio 发布时遇到的坑
- 使用Android studio发布项目到jcenter
- Android Studio 发布开源项目到Jcenter重要步骤记录
- Android studio发布项目到 jcenter
- 一起来学Android Studio:(六)使用Gradle发布Android开源项目到JCenter
- Android studio 使用Gradle发布Android开源项目到JCenter 总结
- Android Studio 发布开源项目到Jcenter重要步骤记录
- Android studio 使用Gradle发布Android开源项目到JCenter 总结
- Android Studio 发布开源项目到Jcenter重要步骤记录
- Android Studio发布项目到jcenter升级版
- Android studio 发布Android Library项目到JCenter
- Android Studio 发布开源项目到Jcenter重要步骤记录
- Android Studio发布项目到Jcenter
- Android Studio 发布开源项目到Jcenter重要步骤记录
- 如何使Android Studio项目发布到Jcenter中
- 如何在Android Studio上发布项目到Maven和JCenter