Android项目使用第三方库依赖树的查看方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android项目使用第三方库依赖树的查看方法相关的知识,希望对你有一定的参考价值。

参考技术A

前景纪要
开发项目时多多少少都会引入一些第三方库,当出现库与库之间依赖冲突时,我们需要把冲突的依赖使用exclue进行排除。所以需要知道每个第三方依赖库的依赖树,知道依赖树就清楚哪里
冲突啦,下面就记录下几种查看依赖树的方式。

2.指定compile 环境查看依赖树命令如下:

方案二:
Android sutdio gradle task 工具查看如下图
1.面板右上角“Gradle”

2. 双击dependencise,会在Run控制台输出打印

3. 打印如图

常用命令配置如下:

JitPack发布一个你自己的 Android 依赖库

文章目录

背景


最近突然想开发个 Android Library,提供 Android 依赖库给其他开发者简单使用。

前期踩坑略多,这里做个记录。

步骤

新建 Android Library 项目


新建一个 Project 工程,再新建一个 Library 模块 taostfree。项目结构如下:


githubzouqi/toastfree 工程地址

有疑问的同学可以查看工程结构,这里就不细说了。

配置 Gradle


  • toastfree 模块下的 build.gradle 文件中添加 maven-publish 插件
plugins 
    id 'com.android.library'
    id 'maven-publish'

  • 添加上传方法(官方建议)
dependencies 
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    ...


afterEvaluate 
    // 官方建议使用上传方法
    publishing 
        publications 
            // Creates a Maven publication called "release".
            release(MavenPublication) 
                from components.release // 表示发布 release(jitpack 都不会使用到)
                groupId = 'com.github.githubzouqi' //groupId 随便取 , 这个是依赖库的组 id
                artifactId = 'toastfree'  //artifactId 随便取 , 依赖库的名称(jitpack 都不会使用到)
                version = '1.0.5' // 当前版本依赖库版本号,这个jitpack不会使用到,只是我们开发者自己查看
            
        
    

这里没啥可说的,上面注释已经写的很详细。

  • 完整 gradle 配置
plugins 
    id 'com.android.library'
    id 'maven-publish'


android 
    compileSdkVersion 30
    buildToolsVersion "30.0.2"

    defaultConfig 
        minSdkVersion 19
        targetSdkVersion 30
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        consumerProguardFiles 'consumer-rules.pro'
    

    buildTypes 
        release 
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        
    




dependencies 
    implementation fileTree(dir: 'libs', include: ['*.jar'])

    implementation 'com.android.support:appcompat-v7:28.0.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'


afterEvaluate 
    // 官方建议使用上传方法
    publishing 
        publications 
            // Creates a Maven publication called "release".
            release(MavenPublication) 
                from components.release // 表示发布 release(jitpack 都不会使用到)
                groupId = 'com.github.githubzouqi' //groupId 随便取 , 这个是依赖库的组 id
                artifactId = 'toastfree'  //artifactId 随便取 , 依赖库的名称(jitpack 都不会使用到)
                version = '1.0.5' // 当前版本依赖库版本号,这个jitpack不会使用到,只是我们开发者自己查看
            
        
    



提交项目到 github


这个也是比较简单,同学们自己根据实际来提交即可。

我这里是已经提交过了,说下我的操作:关联远程库,提交到暂存区,拉取远端开发分支(我这里是 dev)到本地,然后合并,合并成功后再 push 到远端开发分支即可。


上面是我通过 Git Bash 的一次完整的提交过程,仅供参考。

Pull Request 到主分支


后面是通过给主分支创建 tag 分支,打 release 包。所以我这里会先拉取一下从 dev 分支到主分支的请求。

熟悉 github 的同学也比较了解,这里不多细说。







上面就是一次完整的 pull requests,仅供参考。

创建 tag 并发布 release 版本


我这里创建 tag 使用 github 做演示,同学们熟悉 git 命令的可以使用命令进行创建。

  • 进到 release 打包页。如下图:

这里能看到所有打过的 release 版本信息。

  • 新建 tag 并发布 release

输入新分支名称后点击回车,即可创建 tag v1.0.6 。


到这里就完成了 github 相关的 release 打包操作。

JitPack 生成项目的依赖库


打开 JitPack 官网 https://jitpack.io/,输入项目地址。点击 Look Up,然后等待 builds 完成后生成库依赖。

等待 Get it 按钮变成绿色后,就表示生成库依赖成功了。

使用也比较简单,如下:

第三方应用集成使用依赖库


  • project 下的 build.gradle 文件中配置
allprojects 
    repositories 
    	...
        maven url 'https://jitpack.io' 
    

  • 模块下的 build.gradle 中添加依赖
dependencies
	...
	implementation 'com.github.githubzouqi:ToastFree:v1.0.6'

然后 sync 重新构建一下项目,成功后可以发现依赖添加成功了。

  • MainActivity.java 中使用依赖库

    上面说明依赖库成功添加,可以使用库里的 api

JitPack 生成依赖库的 pom.xml 文件地址

https://javadoc.jitpack.io/com/github/github用户名/github项目名/


输入对应的版本路径即可查看对应版本库里的所有文件(也包括 pom.xml 文件)。

参考链接


JitPack > Android

发布Android库到Jitpack,只需三步

使用jitpack发布你自己的依赖库

gradle7.0.2如何发布jitpack开源项目

关于Jitpack发布aar,会丢失内置依赖库问题


技术永不眠!我们下期见!

以上是关于Android项目使用第三方库依赖树的查看方法的主要内容,如果未能解决你的问题,请参考以下文章

Android 查看项目依赖树的四种方式

查看python第三方库的依赖

查看python第三方库的依赖

Android项目依赖库管理方式简介

JitPack发布一个你自己的 Android 依赖库

JitPack发布一个你自己的 Android 依赖库