Gradle 常用小配置速查

作者: zcwfeng | 来源:发表于2020-08-16 11:14 被阅读0次

gradle 需要配置的几个地方

grale/wrapper/gradle-wrapper.properties
根据升级版本来

#Fri Oct 09 13:06:33 CST 2020
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip

local.properties sdk,ndk 路径

ndk.dir=xxxx/Android/android_SDK/sdk/ndk/17.2.4988734
sdk.dir=xxxx/Android/android_SDK/sdk

gradle.properties

org.gradle.jvmargs=-Xmx2048m
android.useAndroidX=true

# Automatically convert third-party libraries to use AndroidX
android.enableJetifier=true
# Kotlin code style for this project: "official" or "obsolete":
kotlin.code.style=official

gradle 头部plugin配置,两种方式

->apply plugin
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
apply plugin: 'dagger.hilt.android.plugin'

-> plugins + id和上面是等价
plugins{
    id 'com.android.application'
    id 'kotlin-android'
    id 'kotlin-android-extensions'
    id 'kotlin-kapt'
    id 'dagger.hilt.android.plugin'
}

Kotlin ,java8,viewbinding 支持

compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    kotlinOptions {
        jvmTarget = '1.8'
    }
    buildFeatures {
        viewBinding = true
    }

全局配置 sdk 版本属性

ext{
    compileSdkVersion=29
    buildToolsVersion="29.0.2"
    minSdkVersion=21
    targetSdkVersion=29
}
-> 项目中引用,rootProject.xxx
android {
    compileSdkVersion rootProject.compileSdkVersion
    buildToolsVersion rootProject.buildToolsVersion

    defaultConfig {
        applicationId "top.zcwfeng.activityhookdemo"
        minSdkVersion rootProject.minSdkVersion
        targetSdkVersion rootProject.targetSdkVersion
        versionCode 1
        versionName "1.0"

    }
    ......
}

implementation,api

implementation  只能在自己的module中使用
api 穿透,其他moudule也可以使用,引用等

配置本地artifactory 同步之后的配置速查

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {

        maven{
            url 'http://localhost:8081/artifactory/alinyun_maven_group'
        }
        google()
        jcenter()
    }

    dependencies {
        classpath "com.android.tools.build:gradle:4.0.1"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {

        maven{
            url 'http://localhost:8081/artifactory/alinyun_maven_group'
        }

        google()
        jcenter()
    }
}


ext{
    compileSdkVersion=29
    buildToolsVersion="29.0.2"
    minSdkVersion=21
    targetSdkVersion=29
    androidXVersion="1.2.0"
    constraintlayoutVersion="2.0.1"
    googleAutoServiceDependency = 'com.google.auto.service:auto-service:1.0-rc7'


    extCompileOptions = {
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_1_8
            targetCompatibility JavaVersion.VERSION_1_8
        }
        kotlinOptions {
            jvmTarget = '1.8'
        }
        buildFeatures {
            viewBinding = true
        }
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

整理一份编译加速配置,参考速查
需要自己搭建artifactory 关于 artifactory请自行查询使用,很简单研究下就好

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        maven{
            url 'http://localhost:8081/artifactory/alinyun_maven_group'
        }
        maven {
            url 'https://maven.aliyun.com/repository/google'
        }
        maven {
            url 'https://maven.aliyun.com/repository/jcenter'
        }
        maven {
            url 'https://maven.aliyun.com/repository/public'
        }

        google()
        jcenter()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
        
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:4.0.1'
        
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        maven{
            url 'http://localhost:8081/artifactory/alinyun_maven_group'
        }
        maven {
            url 'https://maven.aliyun.com/repository/google'
        }
        maven {
            url 'https://maven.aliyun.com/repository/jcenter'
        }
        maven {
            url 'https://maven.aliyun.com/repository/public'
        }

        google()
        jcenter()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }

    }
}

ext{
    compileSdkVersion=29
    buildToolsVersion="29.0.2"
    minSdkVersion=21
    targetSdkVersion=29
    androidXVersion="1.2.0"
    constraintlayoutVersion="2.0.1"

//    extCompileOptions = {
//        compileOptions {
//            sourceCompatibility JavaVersion.VERSION_1_8
//            targetCompatibility JavaVersion.VERSION_1_8
//        }
//        kotlinOptions {
//            jvmTarget = '1.8'
//        }
//        buildFeatures {
//            viewBinding = true
//            dataBinding = true
//        }
//    }
}
task clean(type: Delete) {
    delete rootProject.buildDir
}


容易忽略的gradle.properties

useAndroidX 老项目升级过程

org.gradle.jvmargs=-Xmx2048m
android.useAndroidX=true
# Automatically convert third-party libraries to use AndroidX
android.enableJetifier=true
# Kotlin code style for this project: "official" or "obsolete":
kotlin.code.style=official

相关文章

  • Gradle 常用小配置速查

    gradle 需要配置的几个地方 grale/wrapper/gradle-wrapper.properties根...

  • Gradle 常用NDK配置速查

    NDK 小配置速查 ndk 参数和so配置 完整例子

  • Gradle Hilt 配置速查

    APP gradle 文件 关注 plugin + dependencies Project gradle 关...

  • gradle片段

    gradle 常用配置 多模块项目 setting.gradle gradle 发布jar包到本地仓库 gradl...

  • Git 常用命令速查

    Git 常用命令速查 配置SSH git config --global user.name "yourname"...

  • 常用Gradle配置

    1、添加aar依赖 在allprojects->repositories节点下添加 在dependencies节点...

  • Gradle 常用配置

    一、release 、debug 版本不同配置 添加不同环境的接口切换和Debug 开关配置 代码中使用: 二、统...

  • Gradle常用配置

    基本介绍 Gradle 是一个基于 Ant 和 Maven 概念的项目自动化建构工具。它使用一种基于 Groovy...

  • Gradle常用配置

    Android Studio使用Gradle进行构建,不仅可以非常方便的管理依赖,还可以自定义一些实用的功能,例如...

  • gradle 常用配置

    一 ,implementation 的使用 替换complie 直接替换使用 引入本地jar

网友评论

    本文标题:Gradle 常用小配置速查

    本文链接:https://www.haomeiwen.com/subject/ctjtjktx.html