1. Gradle

Gradle是一个依赖管理工具,也是一个编程框架。基于Groovy语言,面向Java应用为主,摒弃了基于XML的繁琐配置,采用的是一种基于Groovy的内部领域特定(DSL)语言,该工具可以完成app的编译打包等工作。

默认下载目录

Windows下会默认下载到如下路径:

C:\Users\用户名\.gradle\wrapper\dists

下载完成后,可以看到该目录下会有gradle-x.xx-all的文件夹,例如我现在就有如下几个版本的gradle文件。

项目中Gradle文件

一个完整的项目一般都包含如下几个与Gradle相关的文件:

app下的build.gradle

该gradle文件是Module的gradle配置文件,也是整个项目中最重要的gradle配置文件。

gradle下的gradle-wrapper.properties

在项目的gradle目录下主要有两个文件,主要看gradle-wrapper.properties这个文件下的内容:

#Tue Nov 28 15:51:05 CST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https://services.gradle.org/distributions/gradle-3.3-all.zip

这里声明了gradle的目录和下载路径以及项目使用的gradle版本,这些默认值一般都不会改。如果想修改gradle版本,可以直接在这里修改,并点击Sync Now。

也可以到Project Structure(可以通过快捷键Ctrl+Alt+Shift+s进入)去查看和修改:

项目下的build.gradle

buildscript {
repositories {jcenter()
}
dependencies {classpath 'com.android.tools.build:gradle:2.3.3'// NOTE: Do not place your application dependencies here; they belong// in the individual module build.gradle files
}
}allprojects {repositories {jcenter()}
}task clean(type: Delete) {delete rootProject.buildDir
}

这些代码都是自动生成的,通常情况下不需要修改这个文件中的内容。两处repositories闭包中都声明了jcenter(),jcenter是一个代码托管仓库,从而使得我们在项目中可以引用任何jcenter上的开源项目。dependencies闭包中使用classpath声明了一个Gradle插件,因为Gradle并不是专门为构建Android项目而开发的,Java、C++等很多种项目都可以使用Gradle来构建。如果想要使用Gradle来构建Android项目,则需要声明com.android.tools.build:gradle:2.3.3这个插件,其中,后面是插件的版本号。

项目下的settings.gradle

include ':app'

整个项目中的module工程,如果还有其他的module则按照’:module名称’的格式添加即可。

2. compileSdkVersion

编译SDK的版本。

下载路径:

compileSdkVersion的路径在你所安装SDK目录下的platforms下。

根据项目工程的需要,可以到app下的build.gradle去修改SDK版本。还可以进入如下界面去修改SDK的指定路径。

3. buildToolsVersion

构建工具的版本。

下载路径:

compileSdkVersion的路径在你所安装SDK目录下的build-tools下。

根据项目工程的需要,可以到app下的build.gradle去修改buildTools版本。

看别人的开源项目时,要确保gradle版本,buildTools版本以及 compile sdk 版本跟你本地一致,这样你就可以进行编译、打包、安装了。

本文参考了stormzhang的博文:
点击进入

Android项目工程中的Gradle、compileSdkVersion、buildToolsVersion相关推荐

  1. 【Android 安装包优化】使用 lib7zr.so 动态库处理压缩文件 ( 拷贝 lib7zr.so 动态库到 Android Studio 工程 | 配置 build.gradle 构建脚本 )

    文章目录 一.拷贝 lib7zr.so 动态库到 Android Studio 工程 二.配置 Module 下的 build.gradle 构建脚本 三.参考资料 一.拷贝 lib7zr.so 动态 ...

  2. Mac android原生工程中潜入react-native混合开发项目搭建

    最近公司有意向要用react-native做开发,自己在去年的时候也接触过,不过没有深入探讨,这两天,抽出时间看了看,顺便看了一下文档,做了一个简易的dome,由于我本人用的mac os 系统,Mac ...

  3. java覆盖率怎么包含多个工程,在多项目工程中统计子工程的覆盖率

    背景介绍 在前文中我们对如何在gradle编译体系的工程中加入Jacoco代码覆盖率统计的方法做了介绍,但是前文的方法仅能统计到主工程的代码覆盖率,而无法统计到库工程,其具体原因可以参考此文Issue ...

  4. Android 项目工程优化

    随着项目工程越来越大,工程中的无用资源无用代码,也会随之增多,占据一定的空间,造成资源浪费 而Android 早已经为我们提供了这种工具Android Lint来检测我们的项目.Lint翻译过来是&q ...

  5. Android 项目工程目录简单介绍

    **一..gradle文件夹.** ​        android studio使用时自动生成的文件夹,开发者不用关心里面的内容,开发过程不会改这个文件夹内容,存放gradle构建脚本,可以理解为为 ...

  6. 在jenkins上配置Android项目(git管理,gradle构建)

    1.安装插件 系统管理->管理插件,选择"可选插件"tab,在其中选择(通过右上方搜索进行筛选)git plugin, git client plugin, gitlab p ...

  7. Android项目同步,如何通过gradle任务同步Android项目?

    而且我有3项任务:增量版本,内置的应用程序和发布应用内: increaseVersionCode assembleRelease crashlyticsUploadDistributionReleas ...

  8. 【Unity3D】Android Studio 工程中使用 Java 代码调用 Unity 的 C# 脚本 ( Java 中调用 UnityPlayer#UnitySendMessage 方法 )

    文章目录 一. Java 调用 C# 依赖库准备 1.依赖库位置 2.unityLibrary 依赖库位置 二. Java 调用 C# 的 UnityPlayer#UnitySendMessage 方 ...

  9. vue项目工程中npm run dev 到底做了什么

    npm install 安装了webpack框架中package.json中所需要的依赖 2.安装完成之后,需要启动整个项目运行,npm run 其实执行了package.json中的script脚本 ...

最新文章

  1. python多线程读取文件的问题_Python多线程同步---文件读写控制方法
  2. HDU-2044-一只小蜜蜂
  3. java 传参字符串数组_JAVA语言之okhttp传递数组参数
  4. HTTP Status 405 – Method Not Allowed HTTP method GET is not supported by this URL
  5. H5网页播放器播不了服务器上的mp4视频文件
  6. 机器学习03Logistic回归
  7. java 时间转中文_使用JScript把时间转成中文
  8. java 声明抽象方法_java – 类必须声明为abstract或实现抽象方法错误
  9. 线程中如何使用对象_在 Flink 算子中使用多线程如何保证不丢数据?
  10. mysql本周数据没有填充_MySql查询本周、本月、本年数据(没有数据则补全0)
  11. Spring事务方法与非事务方法执行相互调用不回滚,你踩过这个坑没?
  12. 《设计模式详解》行为型模式 - 模板方法模式
  13. JQuery所有版本及说明文档
  14. Sql Server数据库查询去重数据,并保留最新的数据,以及删除重复数据
  15. Python移植MATLAB的巴特沃斯滤波器,椭圆滤波器
  16. linux磁盘空间满如何清理,linux磁盘空间不足怎么办,磁盘清理方法
  17. C盘Windows XP,D盘Windows7,双系统安装纪录
  18. office2020与2016版的不同_office2016和office2019哪个版本好用?office2019新亮点
  19. 修改滚动条样式的方法
  20. SDB光猫虚拟服务器,折腾光猫/路由器[MIPS架构](1):用Samba服务器搭建家庭文件共享中心...

热门文章

  1. 技术干货 | Flutter 混合开发基础
  2. 如何用杠铃策略,构建你的“反脆弱性”
  3. springboot常用配置
  4. [译] 曝光!UX 行话大全
  5. 在linux下玩转usb摄像头
  6. apple air装双系统(win7)
  7. PMBOK项目管理思维导图梳理
  8. C++11 中STL库中新增内容
  9. outlook里面邮件不能显示图片
  10. 菜鸟学SQL注入 --- 一个简单的教学案例