一、描述
平时会积累一些工具类的习惯,就想着把自己积累的一些工具类上传到仓库上去,以后使用会很方便,就选择了Jcenter,这个用户量还是很大的,但是我感觉要上传到Jcenter好麻烦,配置的太多了,还经常会出错,最近发现了一个很好用的,不麻烦很容易。
二、JitPack使用
第 1 步 : 首先创建项目,并且创建一个Library(JitModule)
第 2 步 : 配置项目的build.gradle
添加 : classpath 'com.github.dcendents:android-maven-gradle-plugin:1.3'
dependencies {
classpath 'com.android.tools.build:gradle:2.2.0'
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
第 3 步 : 配置Library的build.gradle
apply plugin: 'com.android.library'
apply plugin: 'com.github.dcendents.android-maven' //必加
group='com.github.junwen0814' //必加,com.github.<用户名>(也就是你GtiHub上的地址)
//---------------------------------------------
android {
compileSdkVersion 24
buildToolsVersion "24.0.2"
defaultConfig {
minSdkVersion 15
targetSdkVersion 24
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:24.2.1'
testCompile 'junit:junit:4.12'
}
//---------------------------------------------下面的必加,加上下面的作用是在上传后会带上注释,不然会发现没有注释
// 指定编码
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
}
// 打包源码
task sourcesJar(type: Jar) {
from android.sourceSets.main.java.srcDirs
classifier = 'sources'
}
task javadoc(type: Javadoc) {
failOnError false
source = android.sourceSets.main.java.sourceFiles
classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
classpath += configurations.compile
}
// 制作文档(Javadoc)
task javadocJar(type: Jar, dependsOn: javadoc) {
classifier = 'javadoc'
from javadoc.destinationDir
}
artifacts {
archives sourcesJar
archives javadocJar
}
第 4 步 : 上传项目到GitHub上,并且点击releases
第 5 步 : 创建一个新的版本
第 6 步 : 提交版本
第 7 步 : 版本创建完成,跳转JitPack添加此版本
第 8 步 : 版本创建完成,跳转JitPack地址戳这里
第 9 步 : 可以直接在项目中进行使用了,以后你只需要更新GItHub上面的代码,然后创建一个release版本就好。
三、问题
第一个问题:
则把项目中的build.gradle里的插件版本提升到1.4.1就可以了。
dependencies {
classpath 'com.android.tools.build:gradle:2.2.0'
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.4.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
第二个问题:
如果遇到GitHub上更新了代码,创建了Release,但是JitPack上面的Get It 一直是灰色的,并且加入到项目中,也一直不能用(Get it 灰色是需要你点击他,然后就会上传)
原因是因为你的项目中有编译错误的问题,需要先解决了,再上传更新!
四、参考资料
http://www.gcssloop.com/course/PublishLibraryByJitPack
http://www.gcssloop.com/course/jitpack-sources-javadoc
五、总结
这个JitPack确实方便很多,不用配置那么多东西,跟GitHub相连配合,感觉很方便,有兴趣的可以尝试用用看。
欢迎关注我的微信公众号,分享更多技术文章。