Gradle 详解
2024-08-31 03:39:25
Gradle简单来说,就是工程的管理,帮我们做了依赖,打包,部署,发布等工作。就像一个管家管理我们的项目,我们只用关心写代码就可以了。
1 gradle-wraaper.properties
主工程的gradle-wraaper.properties文件 ,用于配置Gradle版本
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
其中distributionUrl就是下载Gradle的路径,下载完成后存放路径:
导入项目时,注意本地常用的gradle和新项目的gradle是否一致。如果不一致,会去重新下载gradle文件,并重新构建,时间可长可短。
可把本地gradle-wraaper.properties文件替换至新项目,用本地常用gradle构建新项目,省去下载不同版本gradle。
2 主工程build.gradle(Project)
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.3'
}
}
buildscript声明的是gradle脚本自身需要使用的资源。
repositories仓库,jcenter()、maven()和google()就是托管第三方插件的平台
dependencies配置的是gradle需要的插件版本
这一次彻底弄明白Gradle相关配置:https://mp.weixin.qq.com/s/1UHcYOudViMhpUYeREZzGA
一 . Gradle基础:https://segmentfault.com/a/1190000002439306
module下的gradle文件:
// 声明是Android程序
apply plugin: 'com.android.application' android {
// 编译SDK的版本
compileSdkVersion 21
// build tools的版本
buildToolsVersion "21.1.1" defaultConfig {
// 应用的包名
applicationId "me.storm.ninegag"
minSdkVersion 14
targetSdkVersion 21
versionCode 1
versionName "1.0.0"
} // java版本
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
} buildTypes {
release {
// 是否进行混淆
minifyEnabled false
// 混淆文件的位置
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
} // 移除lint检查的error
lintOptions {
abortOnError false
}
} dependencies {
// 编译libs目录下的所有jar包
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:support-v4:21.0.2'
compile 'com.etsy.android.grid:library:1.0.5'
compile 'com.alexvasilkov:foldable-layout:1.0.1'
// 编译extras目录下的ShimmerAndroid模块
compile project(':extras:ShimmerAndroid')
}
最新文章
- Windows Phone 10如何借Windows 10的东风
- MySQL7:视图
- nmap 高级扫描用法
- 关于三星A7屏幕锁已由管理员、加密政策,或证书存储禁用
- [SAP ABAP开发技术总结]消息处理Messages
- Kinetic使用注意点--lable
- AppStore IPv6-only审核被拒原因分析及解决方案-b
- UILabel自适应高度和自动换行
- redis简单配置
- BitNami一键安装Redmine
- 优化数据页面(18)——标注keyword
- [译]Selenium Python文档:目录
- Mac OS X 10.10优胜美地如何完美接管iphone上的电话和短信
- Lab 7-2
- leetcode94
- python 惰性求值 https://blog.csdn.net/Appleyk/article/details/77334221
- poj3278 【BFS】
- linux export source
- Spring-Data-Redis 下实现jedis连接断开后自动重连
- php的语法
热门文章
- C++的同名属性(没有虚拟属性)、同名普通函数、同名静态函数(没有虚拟静态函数),是否被覆盖
- linux:服务器代理squid安装配置
- ☆☆☆☆☆Placeholder兼容各大浏览器的例子☆☆☆☆☆
- java复习(4)异常
- 2018-8-10-VisualStudio-修改配色
- apachectl 命令详解-graceful 不中断原有连接,重新启动 Apache 服务器
- [转]WAREZ无形帝国
- dying relu 和weight decay
- STL的容器哈希表
- java并发学习--第八章 JDK 8 中线程优化的新特性