微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Gradle 的基本使用

Gradle 的优点 原文:https://blog.csdn.net/achenyuan/article/details/80682288 

1. 按约定声明构建和建设;
2. 强大的支持多工程的构建;
3. 强大的依赖管理(基于Apache Ivy),提供最大的便利去构建工程;
4. 全力支持已有的 Maven 或者Ivy仓库基础建设;
5. 支持传递性依赖管理,在不需要远程仓库和pom.xml和ivy配置文件的前提下;
6. 基于groovy脚本构建,其build脚本使用groovy语言编写;
7. 具有广泛的领域模型支持构建;
8. 深度 API;
9. 易迁移;
10. 自由和开放源码,Gradle是一个开源项目,基于 ASL 许可。

下面是Gradle 基本配置的简介
build.gradle (作用类似于 maven 中的epom 文件)

plugins {
    id 'java'
    id 'war'
}

group 'gradle02-projext'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8



dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.11'
    testCompile group: 'junit', name: 'junit', version: '4.12'
}

原文位置(https://blog.csdn.net/cluzax/article/details/46583771

目录文件作用
.gradle gradle项目产生文件自动编译工具产生的文件
.idea IDEA项目文件(开发工具产生的文件
app 其中一个module,复用父项目的设置,可与父项目拥有相同的配置文件
build 自动构建时生成文件的地方
gradle 自动完成gradle环境支持文件
.gitignore git源码管理文件
build.gradle gradle 项目自动编译的配置文件
gradle.properties gradle 运行环境配置文件
gradlew 自动完成 gradle 环境的linux mac 脚本,配合gradle 文件夹使用
gradlew.bat 自动完成 gradle 环境的windows 脚本,配合gradle 文件夹使用
local.properties Android SDK NDK 环境路径配置
*.iml IDEA 项目文件
setting.gradle gradle 项目的子项目包含文件
  1. .gradle .idea 是在分别在 gradle ,IDEA 运行时候会生成文件,一般这样的文件也不会纳入源代码管理之中。
  2. app文件夹,是其中一个module,里面的文件内容父类差不多,若没有定义,则在项目中使用父类的设置(意思就是,里面也能包含build.gradle、gradle.properties、setting.gradle 等相关gradle文件,怎么理解?其实每一层都是一个module,整个项目是一个大的 module 而已)
  3. gradle 文件夹,用于保存gradle 下载路径的配置文件位置,用于没有gradle环境的环境初始化使用
  4. build.gradle 项目的编译环境配置,比如制定项目依赖的lib包。
  5. gradle.properties 配置gradle运行环境的文件,比如配置gradle运行模式,运行时jvm虚拟机的大小
  6. gradlew && gradlew.bat 代替gradle 命令实现自动完成gradle环境搭建。配合gradle文件夹的内容,会降到IDEA如何搭配gradlew使用。
  7. local.properties 配置android NDK,SDK的地方,恩,非android项目可能没有这个文件,这个路径根据不同想电脑不同,一般也不会纳入源代码管理之中,一般可以写一个local.properties.simple 文件,告知需要修改文件名并写上本地SDK NDK 路径。simple文件纳入源码管理之中。
  8. setting.gradle 子项目包含文件,声明当前目录下含有什么module,当然你的app底下加上这样的文件,也能继续在app底下加module。和我第点说的,整个project就是一个大的module,每个module下面还能包含相应的module。如果你理解这个了,其实app目录单独作为一个项目管理也是可以的,,把相应的配置文件配上而已,相当于主目录应用 android 的gradle plugin (下一点会说到这个)
  9. gitignore 该文件是源码管理的配置文件,不在该文讲解。

    既然gradle 是多 module形式,那么我们来看看 setting.gradle 配置的内容

rootProject.name = 'gradle'

 

从上面目录的配置文件内容来看,整个project也算是一个module,如果改module底下还有module,就可以通过setting.gradle配置进来,使得该module底下的gradle,从app module底下可以看出,module最少要含有 build.gradle文件,这个module的项目编译文件,该module依赖什么插件对该目录进行编译都在此配置,比如android与android-library,其他内容可继承父类

同样maven项目需要依赖,Gradle也需要jar包

但是Gradle的jar包去哪里找呢 根据Build.Gradle 已经指出来了

repositories {
    mavenCentral() maven中心仓库
}

网址是https://search.maven.org/  使用搜狗浏览器我的打不开,所以我使用了谷歌

里面有一个jar包是将netty所有的jar包都包含了

我都拷贝出来吧

maven版本下的 还不让我copy

<dependency>

<groupId>io.netty</groupId>

<artifactId>netty-all</artifactId>

<veresion>5.0.0.Alpha2<version>

</dependency>

 

'io.netty:netty-all:4.1.34.Final'
E:\sturts2\gradle03-projext>gradle clean build

BUILD SUCCESSFUL in 12s
2 actionable tasks: 2 executed
E:\sturts2\gradle03-projext>

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐