精华内容
下载资源
问答
  • gradle使用教程

    2015-05-13 23:29:04
    gradle是一种新的版本构建工具,集合了ant、maven及ivy的优势,具有配置简单,功能丰富等特征,提供多种默认项目布局,本文档是一个方便学习的实践教程。只要能按照教程一步一步走下来,就能很好地掌握gradle这个...
  • gradle基础使用教程

    2016-04-28 11:44:27
    翻译自gradle官网的针对APP DEVELOPER的教程,希望对你能有帮助。
  • Android中gradle使用教程

    2019-09-05 14:40:41
    引入第三方库,配置Android插件,打包apk命名,配置仓库地址,都需要在build.gradle中编写相应代码,我们可能对dependencies中做第三方依赖,发版本更改versionCode与versionName知道如何处理,但是具体详细使用该...

    在我们编写Android代码的时候,引入第三方库,配置Android插件,打包apk命名,配置仓库地址,都需要在build.gradle中编写相应代码,我们可能对dependencies中做第三方依赖,发版本更改versionCode与versionName知道如何处理,但是具体详细使用该如何呢?那就让我们一起来探究吧。

    背景

    gradle语法是基于Groovy语言,Groovy是一种敏捷的动态语言,既可以面向对象编程,又可以用作纯粹的脚本语言,其运行在JVM上,能够与java代码很好的结合,也能扩展现有代码。

    Gradle wrapper

    当我们打开gradle-wrapper.properties文件,查看配置信息:

    distributionBase=GRADLE_USER_HOME
    distributionPath=wrapper/dists
    distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip
    zipStoreBase=GRADLE_USER_HOME
    zipStorePath=wrapper/dists
    

    通过配置项我们可以发现,当前项目使用的gradle版本,配置目录,它会根据以上配置目录下载到user/.gradle/wrapper/dists目录下,
    Gradle Wrapper作用是允许你在没有安装 Gradle 的机器上执行 Gradle 构建,对客户端计算机零配置,减少兼容性问题。

    build.gradle

    build.gradle文件分别在项目目录下和对应module目录都存在,它们的存在承担不同的功能。

    buildscript {
        
        repositories {
            google()
            jcenter()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:3.2.0'
        }
    }
    
    allprojects {
        repositories {
            google()
            jcenter()
        }
    }
    
    task clean(type: Delete) {
        delete rootProject.buildDir
    }
    

    在project目录下的文件主要是配置仓库地址,配置插件,当我们新建项目时,可能我们会疑惑为什么会有两个repositories配置项,它们有什么区别吗?下面我们来解惑。

    首先,buildscript{}闭包声明是gradle脚本自身需要使用的资源,包含插件所在的仓库地址,插件依赖。例如:

    classpath 'com.android.tools.build:gradle:3.2.0
    

    这是我们Android执行task任务所必需的插件地址。

    • 打开现有应用模块的 build.gradle 文件

        	apply plugin: 'com.android.application  
      

      以上代码作为Android应用程序入口,我们需要plugin提供的编译、测试、打包所有tasks。

    • 打开libray中的build.gradle文件

         apply plugin: 'com.android.library'
      

      这个是将当前module打包成aar文件的任务,不是打包成一个apk文件,当我们打开Android studio右侧面板的gradle,可以清晰的看见,每个module的task任务,作为入口module和library,在执行gradle assembleRelaese 时,入口modlue会打包成apk文件,而library会打包成aar文件。

    • allprojects

      在这个节点下定义的属性会被运用到所有的module中,包含依赖的仓库,依赖地址。

      当我们出现重复的support包,我们可以在此强制依赖,例如:

        allprojects {
        repositories {
            google()
            jcenter()
        }
        configurations.all {
            resolutionStrategy.eachDependency { DependencyResolveDetails details ->
                def requested = details.requested
                if (requested.group == 'com.android.support') {
                    if (!requested.name.startsWith("multidex")) {
                        details.useVersion rootProject.ext.supportVersion
                    }
                }
            }
            resolutionStrategy{
                force 'com.google.code.gson:gson:2.8.5'
            }
        }
       	 }
      

      当我们看完project下的build.gradle文件,那我们再来看看项目入口module下的build.gradle文件。

        apply plugin: 'com.android.application'
        
        android {
        
             compileSdkVersion 28
             defaultConfig{
                applicationId "com.bestpay.android.myapplication"
                minSdkVersion 15
                targetSdkVersion 28
                versionCode 1
                versionName "1.0"
             }
        
             buildTypes {
                release {
                    minifyEnabled true
                    zipAlignEnabled true
                    shrinkResources true
                    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
                }
                debug{
                    minifyEnabled false
                    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
                }
            }
            signingConfigs {
                keyAlias '******'
                keyPassword '******'
                storeFile file('Key.jks')
                keyPassword '******'
            }
            productFlavors{
                
            }
        
        }
        
        dependencies{
            implementation fileTree(dir: 'libs', include: ['*.jar'])
            implementation 'com.android.support:appcompat-v7:28.0.0'
        }
      

    通过以上代码,我们查看Android主要设置。

    • defaultConfig 默认配置
    • signingConfig 签名相关
    • buildTypes 构建变体
    • productFlavors 产品风格
    • sourceSets 源集配置

    接下来我们来查看这些属性使用方式:

    sourceSets

    Android studio默认创建(app/src/main)作为代码,资源配置目录,也可以制定给其他目录为配置项
    图1

        sourceSets{
            main{
                res.srcDirs = ['src/custom/res','src/main/res']
                java.srcDirs = ['src/main/java']
                manifest.srcFile 'src/main/AndroidManifest.xml'
                assets.srcDirs=['src/custom/assets']
                jniLibs.srcDirs = ['libs']//指定lib库目录
            }
        }
    

    配置 jniLibs.srcDirs = ['libs'],可以在Android studio的Android视图下生成jniLibs文件夹,可以方便我们存放jar包和库文件,其中Android视图下的jniLibs和project视图下的libs指向同一文件夹app->libs

    packagingOptions

    packagingOptions{
    
     //pickFirsts做用是 当有重复文件时 打包会报错 这样配置会使用第一个匹配的文件打包进入apk 
     // 表示当apk中有重复的META-INF目录下有重复的LICENSE文件时 只用第一个 这样打包就不会报错 
     pickFirsts = ['META-INF/LICENSE'] 
     
     //merges何必 当出现重复文件时 合并重复的文件 然后打包入apk
      //这个是有默认值得 merges = [] 这样会把默默认值去掉 所以我们用下面这种方式 在默认值后添加 
      merge 'META-INF/LICENSE'
    
     //这个是在同时使用butterknife、dagger2做的一个处理。同理,遇到类似的问题,只要根据gradle的提示,做类似处理即可。
      exclude 'META-INF/services/javax.annotation.processing.Processor' 
    }
    

    productFlavors

    配置多渠道,设置不同包名和应用名

    android { 
        productFlavors {
            wandoujia {
                //豌豆荚渠道包配置
                manifestPlaceholders = [UMENG_CHANNEL_VALUE: "wandoujia"]
                //manifestPlaceholders的使用在后续章节(AndroidManifest里的占位符)中介绍
            }
            xiaomi {
                manifestPlaceholders = [UMENG_CHANNEL_VALUE: "xiaomi"]
                applicationId "com.wiky.gradle.xiaomi" //配置包名
    
            }
            _360 {
                manifestPlaceholders = [UMENG_CHANNEL_VALUE: "_360"]
            }
            //...
        } 
    }
    

    lintOptions

    代码扫描分析,Lint 是Android Studio 提供的 代码扫描分析工具,它可以帮助我们发现代码结构/质量问题,同时提供一些解决方案。通常会配置以下方式

     lintOptions {
            abortOnError false //即使报错也不会停止打包
            checkReleaseBuilds false  //打包release版本的时候进行检测
        }
    

    gradle.properties

    这个是一个本地文件,存储一些个人配置,例如gradle运行是否并行,gradle的jvmargs大小、是否开启daemon

    local.properties

    本地文件,存储个人信息,sdk,ndk路径等。

    setting.gradle

    通过include相应module名称。

    Android自带Task命令

    打开Android studio右侧面板,查看gradle命令,让我们来查看具体命令使用场景。

    图2

    • AndroidDependencies 查看app module下所依赖得第三方库,以及库中依赖得子库

    图3

    • siningReport 显示渠道包得签名信息
    • sourceSets 查看项目java ,res ,jni所在得资源位置
    • assembleDebug 打包所有应用程序debug包
    • assembleRelease 打包所有应用程序release包
    • build 打包所有,包括测试项内容
    • clean 删除构建build目录
    • cleanBuildCache 删除构建的缓存目录
    • buildEnvironment app module中声明的所有buildscript依赖项。
    • installDebug 安装Debug版本
    • uninstallDebug - 卸载Debug版本

    Android gradle插件与gradle版本关系

    当我们在根build.gradle引入gradle任务执行得插件时,插件对应gradle最低版本,以下是具体对应关系:

    图4

    参考文献:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Why-Gradle-

    展开全文
  • Gradle使用教程

    千次阅读 2019-10-14 15:33:55
    下载Gradle并配置 下载地址:http://services.gradle.org/distributions/ ,并配置环境变量如下: 1.新建GRADLE_HOME变量,设置文件的安装路径: 2.新建GRADLE_USER_HOME变量,设置gradle的本地仓库: 3...

    一.下载Gradle并配置

    下载地址http://services.gradle.org/distributions/  并配置环境变量如下

    1.新建GRADLE_HOME变量,设置文件的安装路径:

    2.新建GRADLE_USER_HOME变量,设置gradle的本地仓库:

     

     

    3.编辑Path变量,设置bin目录:

     

    4.进入cmd,验证输入:gradle -v

    二.Eclipse使用Gradle

    1.首先需添加gradle插件(省略)

    2.添加gradle属性

    Eclipse -> Window -> Preferences -> Gradle -> Local installation -> 选择gradle安装目录 -> 选择gradle本地仓库目录 -> Apply

    3.创建Gradle工程(步骤省略)

    build.gradle配置文件如下:

    buildscript {
    	ext{
    		springBootVersion = '2.1.7.RELEASE'	
    	}
    	repositories {
    		 maven{ url 'http://nexus.d17w.cn:9092/nexus/content/groups/public'}
    		 maven{ url 'http://repo.spring.io/libs-milestone'}
    	}
    	dependencies {
    		classpath ( "org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    		classpath ( "io.spring.gradle:dependency-management-plugin:1.0.8.RELEASE")
    		classpath ( "com.bmuschko:gradle-cargo-plugin:2.6.1")
    	}
    }
    
    apply plugin: 'java'
    apply plugin: 'org.springframework.boot'
    apply plugin: 'io.spring.dependency-management'
    
    
    group 'com.claimplat'
    version = '1.0.0'
    sourceCompatibility = 1.8
    targetCompatibility = 1.8
    
    tasks.withType(JavaCompile){
    	options.encoding = "UTF-8"
    }
    
    def env = System.getProperty("package.environment") ?: "dev"
    
    jar{
    	baseName = 'claimplat-eureka'
    }
    
    repositories {
    	maven{ url 'http://nexus.d17w.cn:9092/nexus/content/groups/public'}
    	maven{ url 'http://repo.spring.io/libs-milestone'}
    }
    
    dependencyManagement{
    	imports {
    		mavenBom 'org.springframework.cloud:spring-cloud-dependencies:Greenwich.SR2'
    	}
    }
    
    dependencies {   
        compile group: 'org.springframework.boot', name: 'spring-boot-starter-web'
    	testCompile group: 'org.springframework.boot', name: 'spring-boot-starter-test'
    	testCompile group: 'junit', name: 'junit'
    }
    
    
    

    4.创建主启动类验证

    @RestController
    
    @SpringBootApplication
    
    public class Application {
    
    public static void main(String[] args) {
    
                      SpringApplication.run(Application.class,args);
    
    }
    
    @RequestMapping("/")
    
    String home() {
    
               return "hey!JokerMan!";
    
    }
    
    }

    访问localhost:8080

     

     

    展开全文
  • idea+Gradle使用教程

    万次阅读 2018-09-26 14:41:54
    在build.gradle中指定用来下载依赖库的仓库,可以使用网址或者本地地址来指定,也可以使用“mavenCentral()”这些gradle定义的地址来使用默认的仓库。 在dependencies中使用写入依赖库所在组(group),名称...

    导语:

    IDEA拥有大量的JAVA开发者拥护,相比于开源的eclipse,IDEA拥有更简洁直观的界面,拥有更强大的自动补全功能,号称能“一路敲回车完成编码”。如果把IDEA和eclipse比作手机系统,IDEA就好比IOS,美观、强大、人性化、傻瓜化,官方就帮你解决了大部分问题与操作。eclipse更像android,自由、开放、高度可定制,通过一系列的插件也可以达到IDEA同样的、甚至更个性化的体验,但是操作不免让人感觉复杂、上手难。

    Gradle作为build工具的新星,受到谷歌的大力拥护,直接钦定为AS的御用build工具,在java web方面也大有取代maven上位的趋势,已成为IDEA默认支持的构建工具。gradle最大的优势是可以直接在脚本中运行groovy语言,这就使得gradle具有非常强大的扩展性。

    使用IDEA+gradle所组成的工具为项目开发带来了极大的便利,熟练的使用它们相信会为我们带来事半功倍的效果

    一,何为build工具

    我们写一个java web程序大致需要以下步骤呢:

    1. 从版本控制系统下载基础源码
    2. 编写程序,并在这过程中复制相应的依赖包到classpath目录下
    3. 编译java 文件,形成jar包
    4. 运行单元测试
    5. 生成代码覆盖度报告和测试报告
    6. 打包形成war文件
    7. 上传到测试服务器上,进行部署

    在以前,这些操作都是需要我们手动去完成的。比如当引入一个外部依赖时,我们要专门去相应的地方拷贝得到jar包,或者得到源码编译出jar包,然后复制到classpath目录下。写完代码后,我们需要手动使用编译工具编译,然后手动去运行测试工具进行单元测试,如果没问题的话,再手动打包成war包,然后手动上传到服务器指定目录部署。

    一个项目下来我们将会在这些与写代码无关的事情上浪费大量时间,而这些行为很明显是重复的,完全可以编写出相应的程序来帮助我们自动的完成这一系列的操作。而且多人合作时,每个人使用的外部依赖库的版本可能不一样,当合并项目后有可能会因为版本的不同带来BUG,而且这些BUG非常不容易让人发现,人们急需一个统一管理第三方依赖的工具。于是build工具出现了。

    二,在IDEA中创建一个gradle构建的java web项目

    最新版的IDEA默认集成了gradle,不用安装gradle程序就可以在IDEA中创建gradle管理的项目

    1,创建项目

     

     

    2,填写项目ID

    PS:引自百度知道

    groupid和artifactId被统称为“坐标”是为了保证项目唯一性而提出的,如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找搜索。

    groupId一般分为多个段,这里我只说两段,第一段为域,第二段为公司名称。域又分为org、com、cn等等许多,其中org为非营利组织,com为商业组织。举个apache公司的tomcat项目例子:这个项目的groupId是org.apache,它的域是org(因为tomcat是非营利项目),公司名称是apache,artigactId是tomcat。

    比如我创建一个项目,我一般会将groupId设置为cn.zr,cn表示域为中国,zr是我个人姓名缩写,artifactId设置为testProj,表示你这个项目的名称是testProj,依照这个设置,你的包结构最好是cn.zr.testProj打头的,如果有个StudentDao,它的全路径就是cn.zr.testProj.dao.StudentDao

     

     

    3,配置gradle

     

     

    4,填写工程名

     

     

    5,得到的最终目录结构和build.gradle文件

     

     

    三,gradle使用说明

    gradle是一个工具,通过执行build.gradle来实现build的功能,build.gradle这个build脚本是需要程序员自己来编写的,可以使用groovy语言来编写,功能强大而且直观。也可以直接引入其他人已经编写好的脚本或工具来实现build,引入方法为通过apply plugin: 'plugin名'语句实现,plugin可以是build脚本也可以是java程序。

    gradle官方提供了很多常用的build plugin,比如我们这次创建项目引入的‘war’plugin,他是继承自‘java’这个plugin,在实现‘java’plugin中关于build java程序的基础上,额外定义了java web项目目录、打包war包等功能,剔除了打包jar包的功能,具体详情可以在gradle官方文档中查看到。

    build操作通过引入相应的plugin基本就可以实现了,在平时的使用过程中,我们主要对gradle的操作是添加第三方依赖,让gradle帮我们管理这些第三方依赖。

    通过手动操作引入一个第三方依赖(例如spring core)

    1. 前往spring官网找到其提供的spring core下载地址
    2. 选择一个需要的版本下载下来
    3. 解压,将得到的jar包移动到我们项目的classpath目录下

    只需三步,看起来并不是很复杂。但是一个项目需要引入的第三方依赖的数量往往是十分巨大的,而且假如我们下载的spring core版本是4.3.6,并且这是一个多人共同协作的项目,当大家的工作合并起来时,如果有人使用的是4.2.1版本,我们是很难发现这个不同的,而这却可能导致BUG。同时,要删除某些不再需要的依赖时我们只能去classpath目录下找到它并手动删除掉。

    使用gradle引入一个第三方依赖(例如spring core)

    gradle兼容maven仓库,所以可以直接使用maven仓库来导入第三方依赖。maven仓库是按照一定协议来存放各种第三方依赖库的空间,可以通过groupID和artifactid定位来找到自己需要的第三方依赖库。

    1. 在build.gradle中指定用来下载依赖库的仓库,可以使用网址或者本地地址来指定,也可以使用“mavenCentral()”这些gradle定义的地址来使用默认的仓库。
    2. 在dependencies中使用写入依赖库所在组(group),名称(name),版本号(version)

    仓库只需要定义一次,通过上面的配置gradle就会从定义好的仓库中找到相应的依赖包下载下来并编译好,然后就可以直接在代码中使用了。在mvnrepository这个远程maven仓库中,它提供了引入相应依赖包的配置,只需复制下来黏贴到buil.gradle文件中即可。

     

     

    通过build工具管理依赖库的优点

    1. 方便,不需要进行各种文件操作。
    2. 直观,项目中使用了哪些第三方依赖一目了然
    3. 统一,同一项目中的成员只要保证使用同一build脚本就可以做到环境和依赖包的统一

    四,关于Javaweb中gradle的目录配置和IDEA对gradle的适配

    java web有自己的程序包规范(封包格式为.war),类似于安卓中的apk文件。将其移动到web服务器(如tomcat)的相应目录中,web服务器就会将其解压、部署,将网站跑起来。当然也可以直接将其解压,将得到的目录移动到服务器程序指定的目录下(类似于Apache的www目录)即可。

    war包结构

     

     

    gradle定义的项目结构(准确来说是‘war’这个plugin定义的)

    将项目目录结构定义的有别于程序包目录结构,是为了方便程序员在编写程序的时候更加直观的管理项目文件,因为程序包定义的目录结构不一定适合人们直观的对其进行操作。比如war包专门定义了一个Resource目录,方便用户集中管理资源文件和各种配置文件

     

     

    IDEA的项目构建配置(ctrl+alt+shift+s)

    IDEA对各种构建工具的适配就主要体现在这个界面,在这个界面可以提供可视化的构建操作

     

    使用Gradle进行多模块管理

    1、父模块

     

    settings.gradle配置

    是模块Module配置文件,大多数setting.gradle的作用是为了配置子工程,根目录下的settings.gradle脚本文件是针对module的全局配置,它的作用域所包含的所有module是通过settings.gradle来配置。
    settings.gradle用于创建多Project的Gradle项目。Project在IDEA里对应Module模块。
    例如配置module名rootProject.name = 'finaical',为指定父模块的名称,include 'util' 为指定包含哪些子模块

     

    build.gradle的配置

    subprojects中的配置:

    apply plugin: 'java'          apply plugin: 'war'    下载插件

    repositories为指定第三方依赖包仓库的地址,图中配置的依次为本地仓库,maven私服地址,以及maven中央仓库。

    dependencies为添加第三方的依赖包:这里是引用的dependencies.gradle文件里面配置的依赖。

     

    dependencies.gradle中的配置

    引入第三方的包依赖,其他模块可以直接引用。

    2、子模块中的配置

    子模块中只需配置build.gradle文件即可

    该文件可以引入第三方依赖包,同时依赖其他模块

    子模块可以直接引入父模块在 dependencies.gradle文件里面配置的依赖,同时上图还依赖了api模块。

    展开全文
  • Android gradle使用

    Android gradle 基本使用方法

    gradle 的nb之处就不多说了,直接开始讲用法吧。


    1. 基本使用 -- 打包单个工程

    打包脚本如下:

    /*
     * Copyright (C) 2015 liangchao
     */
    buildscript {
        repositories {
            mavenCentral()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:1.2.3'
        }
    }
    
    apply plugin: 'android'
    
    android {
        compileSdkVersion 20
        buildToolsVersion "22.0.1"
    
        defaultConfig {
            versionCode 12
            versionName "2xyx"
            minSdkVersion 8
            targetSdkVersion 17
            applicationId "com.example.SimpleGradleExample2"
            proguardFile "proguard.cfg"
        }
    
        dependencies {
        }
    
        sourceSets { // 配置文件及文件夹路径
            main {
                manifest {
                    srcFile 'AndroidManifest.xml'
                }
                res {
                    srcDir 'res'
                }
                java {
                    srcDir 'src'
                }
                assets {
                    srcDir 'assets'
                }
            }
        }
    
        //签名配置
        signingConfigs {
            relaseConfig {
                storeFile file("sge.keystore")
                storePassword "sgesge"
                keyAlias "sgesge"
                keyPassword "sgesge"
            }
        }
    
        buildTypes {
            debug {
                debuggable true //ddms里边可以看到进程,否则没法debug
                jniDebuggable true
                renderscriptDebuggable true
                renderscriptOptimLevel 3
                applicationIdSuffix ".debug"
                versionNameSuffix ".debug"
                zipAlignEnabled false
                minifyEnabled true
                proguardFile "proguard.cfg"
            }
    
            release {
                minifyEnabled false
                proguardFile 'proguard.cfg'
                signingConfig signingConfigs.relaseConfig
            }
        }
    }



    1.1 apply plugin: 'android'  安卓工程,写成android。如果是library工程,则需要写成android-library


    1.2 android { } 里边的内容,来定义android工程的一些选项。下面我们逐一解释一下。


    1.2.1 compileSdkVersion , buildToolsVersion, defaultConfig 通过名字就可以知道是干什么的。

    defaultConfig 中得applicationId单说一下,applicatinoId,如果不写,则默认为manifest中配置的。具体说明参见:http://tools.android.com/tech-docs/new-build-system/applicationid-vs-packagename


    1.2.2 sourceSets 标明了 manifest , res , java , assets的存放位置。

    1.2.3 signingConfigs 标明了签名的一些配置。由于一般是在release的情况下进行签名,因此只写了一个
    relaseConfig。这里可以写多个config,以便于后面使用。

    1.2.4 buildTypes 定义了build的一些属性。

    debuggable 标示是否可以进行debug。如果写false,则在ddms中看不到进程,也就无法进行debug了。


    minifyEnabled 为true,则标示进行代码的缩减,即code shrinking


    zipAlignEnabled 是否zip对齐。zip align 据官网上说,是对apk一个很重要的优化,建议true吧。zipalign说明地址:http://developer.android.com/intl/zh-cn/tools/help/zipalign.html
     
    renderscriptDebuggable RenderScript 可以进行RenderScript的debug。RenderScript的内容参见:http://developer.android.com/intl/zh-cn/guide/topics/renderscript/compute.html#access-rs-apis

    applicationIdSuffix applicationId增加后缀,这样可以生成不同包名的apk。便于在手机上同时安装debug和release的。

    proguardFile 混淆文件的地址


    2. dependices 的详细解释

    dependices主要是工程的依赖项。大概分为两个维度,依赖的东东和依赖的方式。

    2.1 依赖jar包

    compile files('libs/mathutil.jar')

    compile 标示依赖的方式。files('libs/mathutil.jar')标示依赖的东东。


    依赖的方式还可以是:

    compile: 编译依赖,而且也导出

    provided: 编译依赖,不导出

    androidTestCompile: 测试工程

    debugCompile: debug Build Type

    releaseCompile: release Build Type.


    2.2 依赖其他android-library

    这个依赖,篇幅需要较多,再单独开一篇讲吧。


    3. 速度优化 -- 使用gradle daemon

    可以利用gradle clean --daemon和 gradle build --daemon,亲测可用。对速度的优化还是挺明显的。damon的说明地址:https://docs.gradle.org/2.6/userguide/gradle_daemon.html

    工程地址:https://github.com/LiangChaoPossible/SimpleGradleExample


    希望对大家有帮助,如果有不对地方,还请大家多谅解。

    可以通过邮件交流。future_lc@126.com


    参考文献:

    1. http://tools.android.com/tech-docs/new-build-system/user-guide

    2. http://tools.android.com/tech-docs/new-build-system/applicationid-vs-packagename

    3. http://developer.android.com/intl/zh-cn/tools/help/zipalign.html

    4. http://developer.android.com/intl/zh-cn/guide/topics/renderscript/compute.html#access-rs-apis

    5. https://docs.gradle.org/2.6/userguide/gradle_daemon.html


    展开全文
  • Gradle使用教程

    万次阅读 多人点赞 2018-08-08 19:28:28
    Gradle是一个好用的构建工具 ,使用它的原因是: 配置相关依赖代码量少,不会像maven一样xml过多 打包编译测试发布都有,而且使用起来方便 利用自定义的任务可以完成自己想要的功能 二、安装 下载地址...
  • Gradle教程

    2020-06-05 21:56:42
    与Maven和Ant构建系统不同,Gradle使用XML。 它实际上是基于Groovy构建在DSL中的。 与基于XML的其他构建系统相比,基于Groovy的Gradle脚本的最大优势是可以使构建脚本更小,更简洁。 就像Maven构建文件...
  • InterlliJ Gradle使用教程

    2016-06-07 17:53:32
    https://www.jetbrains.com/help/idea/2016.1/getting-started-with-gradle.html#d225602e11
  • Gradle 使用教程之 Task 详解

    千次阅读 2019-12-23 12:30:44
    后来找到 gradle 官网教程,自己对着撸。 Gradle 概述:小说网站 wap.youxs.org Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的项目自动化构建工具。它使用一种基于 Groovy 的特定领域语言来声明项目设置,而...
  • Gradle Eclipse插件教程

    2020-07-06 03:04:52
    Today we will look into Gradle Eclipse plugin. In my previous post, we have discussed about Gradle Basics and Gradle installation. Before reading this post, Please refer my previous post about gradle ...
  • 跟随这个指导,您将创建一个简单的Gradle项目,调用一些基本的Gradle命令,并且感受一下如何使用Gradle来管理项目。 您需要: 1. 花费大概11分钟; 2. 一个终端应用; 3. 安装好JRE或Java JDK(1.8以上版本)...
  • gradle教程_Gradle教程

    2020-07-16 08:34:52
    gradle教程Welcome to Gradle Tutorial. In my earlier posts, we looked into What ... 欢迎使用Gradle教程。 在我之前的文章中,我们研究了什么是Gradle和Gradle Eclipse插件 。 Gradle教程 (Gradle Tutorial) ...
  • gradle语法是基于Groovy语言,Groovy是一种敏捷的动态语言,既可以面向对象编程,又可以用作纯粹的脚本语言,其运行在JVM上,能够与java代码很好的结合,也能扩展现有代码。 工程配置 #Tue Dec 10 09:19:23 CST ...
  • 通过将构建扫描插件集成到您的项目中,您可以免费将构建扫描发布到https://scans.gradle.com网站。 通过指南您可以 本指南向您展示了如何在不修改任何构建脚本的情况下发布构建扫描。您还将学习如何修改构建脚本,...
  • Android Gradle 使用教程

    千次阅读 2017-12-12 11:40:54
    1.介绍 如果你正在查阅build.gradle文件的所有可选项,请点击这里进行查阅:DSL参考 1.1新构建系统的特性 gradle构建系统具有如下的特点: ...1.2为什么使用GradleGradle既是一个先进的构建系统
  • Gradle是一个基于JVM的富有突破性构建工具,下面这篇文章主要给大家介绍了关于Gradle配置教程之自定义APK名称与输出路径的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起...
  • Gradle实战入门教程-整合版 《Grails实战教程》系列视频作者,从事...
  • 本指南可以告诉您通过使用Gradle的build init插件来生成Java库,这个Java库可以被用于其他JVM库或者应用。 您将构建什么 您将跟随Gradle的规约生成一个Java库文件。 您需要什么 1. 大概花费12分钟; 2. 一个...
  • 文章目录一、build.gradle...其实我在这一章节就跟大伙说过了【Android】Android快速入门教程(四)——项目中需要留意什么地方,这里所以我就不一一说了,这里有前辈的解答project下build.gradle文件和module下buil...
  • gradle基础教程

    2018-05-03 15:58:58
    gradle基础教程,测试框架,简要说明,有需要的可以借鉴使用
  • Gradle学习教程

    2020-03-23 16:39:34
    Gradle学习教程一、Gradle是什么二、为什么要Gradle三、如何安装Gradle四、核心概念基础五、Gradle构建的生命周期初始化阶段配置阶段执行阶段六、任务-(简单任务学习)6.1 任务的简单定义6.2 任务的行为6.3 任务的...
  • Gradle 15分钟入门教程

    万次阅读 多人点赞 2017-05-18 14:09:50
    1-Gradle入门介绍 在阅读或实践本文中的实例前,必须首先确保已将Gradle插件安装到Eclipse中。如果没有,可以点击下面的链接查看Gradle...本教程的目标: 这是项目完成后的代码结构图:  2-创建Gradle
  • Gradle实战教程

    2018-09-10 20:54:58
    Gradle实战教程,全网最低积分下载,不要错过;Gradle实战教程,全网最低积分下载,不要错过;
  • 使用方法: 1. Appmodule/settings.gradle include 'libmodule' // 标示需要引入的library工程。如果不行,build的时候会找不到。 2. libmodule/build.gradle /* * Copyright (C) 2015 ...
  • 其实很早之前也写了一篇Gradle的基础博客,但是...在Android Studio系列教程一–下载与安装中新建项目成功后会下载Gradle,貌似这个过程不翻墙也是可以下载,但是访问特别慢,建议翻墙下载。那么下载的Gradle到什么地方
  • Unity打包导出Gradle项目教程,图片教程

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 21,005
精华内容 8,402
关键字:

gradle使用教程