这是一个使用gradle上传到Jcenter的一个示例
具体步骤 这里写的已经非常明白了 并且提供了多个示例
https://github.com/bintray/gradle-bintray-plugin

本文源码


上传到jcenter至少需要四个文件,除了打包的jar之外,
还需要pom和javadoc,source,否则是通不过jcenter审核的。


下面是博客引文
有时你或许会想发布自己的项目到jcenter来供大家采用gav的形式引用
辣么接下来就是告诉你如何发布自己的项目到jcenter
什么是 Jcenter :Forget about Maven Central

版本信息

JDK : 1.8
Gradle : 2.9

1、前期准备

首先你得去Bintray官方网站去注册一个账号
注册完成后点击编辑Profile获取你的API key

2、编写脚本

因为正常情况下build.gradle还要做一些其它事情,而这里上传的脚本又比较长所以独立出来。

build.gradle

Gradle 2.1+写法:

plugins {id "com.jfrog.bintray" version "1.4"
}
//你的bintray.gradle的相对路径
apply from: 'binary.gradle'

Gradle 2.1-写法:

buildscript {repositories {jcenter()}dependencies {classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.4'}
}
//你的bintray.gradle的相对路径
apply from: 'binary.gradle'

gradle.properties

#JCENTER用户名和API key
BINTRAY_USER=<YOUR USERNAME>
BINTRAY_APIKEY=<YOUR APIKEY>#GAV
GROUP=cn.pkaq
ARTIFACT_ID=ptj.tiger
VERSION_NAME=0.1.0#项目地址相关
POM_URL=http://pkaq.github.io
POM_SCM_URL=https://github.com/pkaq/GradleSide
POM_SCM_CONNECTION=git@github.com:pkaq/GradleSide.git
POM_SCM_DEV_CONNECTION=git@github.com:pkaq/GradleSide.git
#项目相关信息
GIT_URL=https://github.com/pkaq/GradleSide.git
ISSUE_URL=https://github.com/pkaq/GradleSide/issuesPOM_PACKAGING=jar
POM_DESCRIPTION=Tiger say hi~#开源协议
POM_LICENCE_NAME=The Apache Software License, Version 2.0
POM_LICENCE_URL=http://www.apache.org/licenses/LICENSE-2.0.txt
POM_LICENCE_DIST=repo#开发者信息
POM_DEVELOPER_ID=pkaq
POM_DEVELOPER_NAME=Frank.W
POM_DEVELOPER_EMAIL=pkaq@msn.com
POM_DEVELOPER_URL=http://pkaq.github.io

binary.gradle

//上传到jcenter至少需要四个文件,除了打包的jar之外,
//还需要pom和javadoc,source,否则是通不过jcenter审核的。
apply plugin: 'maven-publish'
apply plugin: 'com.jfrog.bintray'
apply plugin: 'java'group = GROUP
version =  VERSION_NAMEdef getBintrayUserProperty() {return hasProperty('BINTRAY_USER') ? BINTRAY_USER : ""
}def getBintrayApiKeyProperty() {return hasProperty('BINTRAY_APIKEY') ? BINTRAY_APIKEY : ""
}//根据jcenter的审核要求 必须包含sourceJar和docJar
task sourceJar(type: Jar) {from sourceSets.main.allSourceclassifier = 'sources'
}task javadocJar(type: Jar, dependsOn: javadoc) {classifier = 'javadoc'from javadoc.destinationDir
}
publishing {publications {mavenJava(MavenPublication) {//GAV配置groupId GROUPartifactId ARTIFACT_IDversion VERSION_NAMEfrom components.javaartifact sourceJarartifact javadocJar//pom相关信息pom.withXml {Node root = asNode()root.appendNode('name', ARTIFACT_ID)root.appendNode('description', POM_DESCRIPTION)root.appendNode('url', POM_URL)def issues = root.appendNode('issueManagement')issues.appendNode('system', 'github')issues.appendNode('url', ISSUE_URL)def scm = root.appendNode('scm')scm.appendNode('url', POM_SCM_URL)scm.appendNode('connection', POM_SCM_CONNECTION)scm.appendNode('developerConnection', POM_SCM_DEV_CONNECTION)def license = root.appendNode('licenses').appendNode('license')license.appendNode('name', POM_LICENCE_NAME)license.appendNode('url', POM_LICENCE_URL)license.appendNode('distribution', POM_LICENCE_DIST)}}}
}
// gradle bintrayUpload
bintray {user = getBintrayUserProperty()key = getBintrayApiKeyProperty()publications = ['mavenJava']
//    configurations = ['archives']dryRun = falsepublish = truepkg {//你在bintray建立的仓库类型repo = 'maven'//包名name = ARTIFACT_ID//描述desc = POM_DESCRIPTION//站点地址websiteUrl = POM_URL//缺陷提交地址issueTrackerUrl = ISSUE_URL//版本库地址vcsUrl = GIT_URL//许可证licenses = ['Apache-2.0']labels = ['gradle', 'tiger']publicDownloadNumbers = trueversion {//版本号name = VERSION_NAME//版本描述desc = POM_DESCRIPTION}}
}

3、提交待审

调用bintrayUpload上传到Jcenter

    gradle -q bU

当bintrayUpload成功之后,

在我的主页https://bintray.com/{your_username}右下部分Latest Activity块,会看到你提交了一个项目,
从这个Latest Activity列表中点击你的项目,
进入详情页https://bintray.com/{your_username}/maven/lesscode-core/view,
找到Maven Central标签,
鼠标放上去它会提示你去提交审核,”To be synced to Maven Central your package needs to be included in the JCenter repository. Click here to get it included.”
点击进入后,随便写什么都可以了。
过审之后在Linked to下面就可以看到多了个Jcenter xxx了

P.S:bintray所有的删除操作都是在edit界面里。

[Gradle中文教程系列]-跟我学Gradle-5.7:依赖-上传与发布番外篇-发布到Jcenter相关推荐

  1. proguard java 教程,[Gradle中文教程系列]-跟我学Gradle-使用proguard混淆你的spring boot应用...

    使用proguard混淆你的spring boot应用 Proguard介绍 安卓开发的同学想必对Proguard都是十分熟悉的,由于java的反编译实在是太容易,使用它可以对java源码进行混淆处理 ...

  2. [Gradle中文教程系列]-跟我学Gradle-5.2:依赖的分类

    依赖的分类 类型 描述 外部依赖 依赖存放于外部仓库中,如jcenter ,mavenCentral等仓库提供的依赖 项目依赖 依赖于其它项目(模块)的依赖 文件依赖 依赖存放在本地文件系统中,基于本 ...

  3. yolov5使用2080ti显卡训练是一种什么样的体验我通过vscode搭建linux服务器对python-yolov5-4.0项目进行训练,零基础小白都能看得懂的教程。>>>>>>>>>第二章番外篇

    第二章番外篇:yolov5通过vscode搭建linux服务器对python-yolov5-4.0项目进行训练,零基础小白都能看得懂的教程.YOLOv5搭建的最快搭建方式,踩坑经历详谈 前期准备: 2 ...

  4. autohotkey基础教程系列(一) ———— 怎么学,哪里学,有哪些现成的demo

    autohotkey基础教程系列(一) ---- 怎么学,哪里学,有哪些现成的demo 引言 这是一门十分有意思的语言. 虽然刚开始看代码的时候会觉得很反人类. 和平时的c,c++,python,c# ...

  5. eeglab中文教程系列 汇总

    eeglab中文教程系列 eeglab简介 教程目录 本教程为脑机学习者Rose发表于公众号:脑机接口社区 .QQ交流群:903290195 eeglab简介 eeglab是一个交互式的matlab工 ...

  6. eeglab中文教程系列(15)-绘制独立成分ERP贡献

    目录 独立成分的ERP 对数据的ERP 的贡献 绘制Component ERP-image 本教程为脑机学习者Rose发表于公众号:脑机接口社区 .QQ交流群:903290195 要完成该操作,必须保 ...

  7. eeglab中文教程系列(14)-Working with ICA Components

    目录 1.绘制component spectra and maps 2.绘制独立成分ERPs 本教程为脑机学习者Rose发表于公众号:脑机接口社区 .QQ交流群:903290195 在本案例前,先要进 ...

  8. eeglab中文教程系列(6)-数据叠加平均{1}(Data averaging)

    目录 1.在头皮图(scalp maps)单轴绘制ERP数据 2.在地形阵列中绘制ERP轨迹(Plotting ERP traces in a topographic array) 3.绘制两列数组的 ...

  9. linkbot 中文教程系列 linkbot破解教程

    linkbot 中文教程系列 一.Linkbot 的作用: Linkbot是一款网站页面链接测试工具,测试每一个链接是否都有对应的页面:页面之间切换是否正确:是否存在空链接:网页图片是否存在:检查 h ...

最新文章

  1. usaco Combination Lock
  2. Python开发基础总结之套接字+字符串+正则表达式
  3. 产业|世界十大工业自动化公司,你知道几家?
  4. idea配置tomcat必坑指南
  5. Linux 实现网页劫持,Linux下实现劫持系统调用的总结(上)--代码及实现
  6. Simpy学习:基本运行与终止(一)
  7. 写一个方法,用一个for循环打印九九乘法表
  8. HDU 5974 2016ICPC大连 D: A Simple Math Problem
  9. 飞腾服务器虚拟化,基于飞腾平台的容器虚拟化技术研究
  10. 案例 | 上海移动:数字化通向互联网的三个路标
  11. 【Spring基础】CGLIB动态代理实现原理
  12. 08-微信公众号素材管理
  13. 电子邮件的地址格式是怎样的?请说明各部分的意思。
  14. 简述python模块
  15. 《鹰猎长空》讲述戏曲与电影的渊源
  16. android原生组件,RN原生的安卓UI组件
  17. ubuntu 截图工具flameshot(火焰截图)
  18. CodeForces - 14E Camels【DP】
  19. php 简转繁体,PHP将简体汉字转为繁体的方法
  20. MP3文件分析之ID3v2.3版本

热门文章

  1. php excel模板导出
  2. 《机器学习西瓜书》学习笔记——第七章_贝叶斯分类器_朴素贝叶斯分类器
  3. Vue自定义域过滤器和管道符
  4. 第四阶段vue项目总结(新手小白一枚,不建议参考。 )
  5. MATH-现代=矩阵
  6. 二叉树-递归计算某节点的层数/深度
  7. Android Studio 教程:入门开发第一个程序
  8. 我刚创建了一个开源项目OXmlEd,欢迎大家拍砖
  9. 在shell中逐行处理csv文件
  10. [ubuntu20]动态ip在路由器上mac地址绑定ip(虚拟机不能用Mac地址绑定IP)