No1:

Android多项目设置

目录结构:

MyProject/

  setting.gradle

  app/

    build.gradle

  libraries/

    lib1/

      build.gradle

    lib2/

      build.gradle

setting.gradle配置文件

include ':app',':libraries:lib1',':libraries:lib2'

也可以指定项目目录

include ':example912'
project(':example912').projectDir = new File(rootDir,'chapter09/example912')

No2:

库项目引用和配置

dependencies {compile project(':libraries:lib1')}

注:Android Lib打包成一个aar包,Java Lib打包成一个jar包

如果包里面有资源,就用Android Lib,如果没有并且是纯java程序可以用Java Lib

同时发布多个版本的aar包

android{publishNonDefault true
}

dependencies{flavor1Compile project(path:':lib1',configuration:'flavor1Release')flavor2Compile project(path:':lib1',configuration:'flavor2Release')
}    

No3:

库项目单独发布

如何搭建自己的Maven私服:

1)使用Nexus Repository Manager,版本选择2.x.x,下载地址:http://www.sonatype.com/download-oss-sonatype,选择nexus-2.12.1-01-bundle.tar.gz包

2)在nexus-2.12.1-01\bin\jsw目录下,运行start-nexus脚本启动Nexus

3)浏览器打开http://localhost:8081/nexus/访问,Log In链接,默认用户名admin,密码admin123

No4:

build.gradle文件中应用Maven插件

apply plugin: 'com.android.library'
apply plugin: 'maven'

配置Maven构建的三要group:artifact:version

apply plugin: 'com.android.library'
apply plugin: 'maven'version '1.0.0'
group 'org.flysnow.widget'

uploadArchives{repositoried{mavenDeployer{repository(url:"http://localhost:8081/nexus/content/repositories/releases"){authentication(userName:"admin",password:"admin123")}snapshotRepository(url:"http://localhost:8081/nexus/content/repositories/snapshots"){authentication(userName:"admin",password:"admin123")}pom.artifactId = "pullview"pom.packaging = "aar"}}
}

告诉Gradle

buildscript{repositoried{jcenter()}dependencies{classpath 'com.android.tools.build:gradle:1,5,0'}
}
allprojects{repositories{jcenter()maven{url 'http://localhost:8081/nexus/content/groups/releases'}}
}

这样就可以在依赖配置里引用刚发布的aar包

dependencies{compile 'org.flysnow.widget:pullview:1.0.0'
}

《Gradle权威指南》--Android Gradle多项目构建相关推荐

  1. 读书笔记--Android Gradle权威指南(上)

    本篇文章已授权微信公众号 dasu_Android(大苏)独家发布 最近看了一本书<Android Gradle 权威指南>,对于 Gradle 理解又更深了,但不想过段时间就又忘光了,所 ...

  2. Android Gradle权威指南

    作者新书<Android Gradle权威指南>指南发布,如果你还在如何入门Android Studio发愁,如何从原来的基于Ant的打包转向基于Gradle的打包,那么这本书就是你需要的 ...

  3. Android Studio下项目构建的Gradle配置及打包应用变体

    Gradle简介   Gradle是一个自动化构建工具,采用Groovy的Domain Specific Language(领域特定语言)来描述和控制构建逻辑.具有语法简洁.可读性强.配置灵活等特点. ...

  4. android gradle权威指南pdf_干货 | 携程 Android 10适配踩坑指南

    作者简介 曙光,携程资深软件工程师,负责市场营销相关研发及管理工作.2019 年 9 月 3 日,Google 发布了 Android 10 正式版.Android 10 聚焦移动创新.安全隐私和数字 ...

  5. android gradle is插件,android gradle 插件创建 configuration

    写了一个gradle 插件,现在的需求是需要通过 productFlavors 的类型来创建不同的 configuration 目前代码: private Project project privat ...

  6. Gradle用户指南(1)-Gradle安装

    前置条件 Gradle 需要 Java JDK 或者 JRE,版本是 6 及以上.Gradle 将会装载自己的 Groovy 库,因此,Groovy 不需要被安装.任何存在的 Groovy 安装都会被 ...

  7. android天天理财项目构建思路代码和总结知识点--1

    本项目属于android开发者入门练习上手的简单项目,值得学习和研究总结一下,内部的套路在开发android上都是大同小异.首先我们把几个大的功能点分区看下,后续我在写其他的内部分支功能. 模块大体功 ...

  8. 07 Confluent_Kafka权威指南 第七章: 构建数据管道

    文章目录 CHAPTER 7 Building Data Pipelines 构建数据管道 将数据集成到上下文 Considerations When Building Data Pipelines ...

  9. Android Gradle指南系列

    自己已经做了几年的Android开发,但是对gradle并不是非常熟悉,遇到了问题大都是去Google查询资料,虽然都能解决问题,但是并不能从根本上去了解本质,每次去查找都要花费不少的时间,如果开发任 ...

最新文章

  1. 正则表达式笔记(谷歌分析自定义报告)
  2. 【计算机网络】网络安全 : 对称密钥密码体质 ( 数据加密标准 DES | DES 加密过程 | DES 保密性 | 三重 DES 加密 )
  3. Web安装项目创建桌面快捷方式
  4. ubuntu 12.04 LTS u盘安装
  5. 在Linux里awk与sed的区别,linux awk和sed讲解
  6. 如何隐藏电脑下方工具栏个别图标_最酷!最帅!最拽!这就是你想要的样子!工具栏美化终极篇...
  7. 12M电信宽带,为什么12台机器上网,总是掉线?有什么办法解决?请给位高手指教...
  8. 2021-06-22列表样式与背景图片
  9. STM32相关问题解决方法
  10. 逻辑斯蒂回归 matlab实现
  11. vmware linux ssh密码,使用 SSH 密钥连接到 Linux VM - Azure Linux Virtual Machines | Azure Docs...
  12. 【Tools】TCP/IP 测试工具——SocketTools
  13. csr8675硬件支持蓝牙5.0还是4.2?5.0是不是后来软升级达到的效果?
  14. android往mac投屏,安卓手机怎么投屏到Mac系统中?
  15. 十分钟入门Matplotlib
  16. 地表反射率影响因素_全了,高考地理答题要点归纳!
  17. postgresql常用操作指令
  18. 物联网是什么?猿承科技
  19. Linux系统如何把kali装进u盘,怎么把kalilinux系统装到u盘中
  20. 1044 火星数字 ——c实现

热门文章

  1. Linux安装MYSQL5.7教程(一次成功)
  2. 第七届 蓝桥杯 省赛 第九题 交换瓶子
  3. L2-014. 列车调度-PAT团体程序设计天梯赛GPLT
  4. 自动化测试与DevOps以及持续集成的关系。
  5. csharp datagridview to a datatable,a dataset
  6. asp.net写验证码
  7. 对付ring0 inline hook
  8. Android studio安装及故障排除
  9. Sitemap Celebration(使用嵌套列表的树形导航)
  10. Marquee无间隙滚动(二)