Kotlin版本的Gradle全局配置init.gradle.kts及参考文档

工欲善其事, 必先利其器。

文章目录

直接在.gradle文件夹下添加文件init.gradle / init.gradle.kt for kotlin dsl.

如果同时存在init.gradleinit.gradle.kt,则优先按照init.gradle中的配置,除非手动指定初始化脚本--init-script

init.gradle.kts

注:如果和groovy版本的init脚本同时存在,则会优先加载groovy版本的

kotlin 复制代码
fun RepositoryHandler.setPluginRepos(){
    maven("http://localhost:8001/repository/maven-plugins/"){
        isAllowInsecureProtocol=true
    }
    maven("https://maven.aliyun.com/repository/gradle-plugin")
    gradlePluginPortal()
}
fun RepositoryHandler.setDependenceRepos(){
    maven("http://localhost:8001/repository/maven-public/"){
        isAllowInsecureProtocol=true
    }
    maven("https://maven.aliyun.com/repository/public")
    maven("https://maven.aliyun.com/repository/central")
    maven("https://maven.aliyun.com/repository/jcenter")
    maven("https://maven.aliyun.com/repository/gradle-plugin")
    mavenCentral()
    mavenLocal()
    google()
}
settingsEvaluated {
    pluginManagement {
        repositories {
            setPluginRepos()
        }
    }
    dependencyResolutionManagement {
        repositories{
            setDependenceRepos()
        }
    }
}

Groovy版本的init.gradle

groovy 复制代码
allprojects {
	buildscript{
		repositories {
			maven { name 'aliyunCentral' ; url 'https://maven.aliyun.com/repository/central' }
			maven { name 'aliyunJcenter' ; url 'https://maven.aliyun.com/repository/jcenter' }
			maven { name 'aliyunGoogle' ; url 'https://maven.aliyun.com/repository/google' }
			maven { name 'aliyunPlugin' ; url 'https://maven.aliyun.com/repository/gradle-plugin' }
			mavenCentral()
			mavenLocal()
			google()
		}
	}
	repositories {
		maven { name 'aliyunCentral' ; url 'https://maven.aliyun.com/repository/central' }
		maven { name 'aliyunJcenter' ; url 'https://maven.aliyun.com/repository/jcenter' }
		maven { name 'aliyunGoogle' ; url 'https://maven.aliyun.com/repository/google' }
		maven { name 'aliyunPlugin' ; url 'https://maven.aliyun.com/repository/gradle-plugin' }
		google()
		mavenLocal()
	}
}

其他有用的

settings.gradle.kts

kotlin 复制代码
pluginManagement {
    repositories {
        maven("http://localhost:8001/maven-public"){
            isAllowInsecureProtocol=true
        }
        maven("https://maven.aliyun.com/repository/public")
        maven("https://maven.aliyun.com/repository/central")
        maven("https://maven.aliyun.com/repository/jcenter")
        maven("https://maven.aliyun.com/repository/gradle-plugin")
        google()
        mavenLocal()
        mavenCentral()
        gradlePluginPortal()
    }
}

dependencyResolutionManagement {
    repositories{
        maven("http://localhost:8001/maven-public"){
            isAllowInsecureProtocol=true
        }
        maven("https://maven.aliyun.com/repository/public")
        maven("https://maven.aliyun.com/repository/central")
        maven("https://maven.aliyun.com/repository/jcenter")
        maven("https://maven.aliyun.com/repository/gradle-plugin")
        google()
        mavenLocal()
        mavenCentral()
    }
}

kotlin 与 compose 版本对应关系

https://developer.android.google.cn/jetpack/androidx/releases/compose-kotlin

agp 与 gradle 版本对应关系

https://developer.android.google.cn/build/releases/gradle-plugin

gradle下载器

本文的国内源全局配置结合gradle下载器,让你的gradle项目编译更加丝滑

ComposeForDesktop之gradle下载器

相关推荐
Jackilina_Stone2 小时前
【faiss】用于高效相似性搜索和聚类的C++库 | 源码详解与编译安装
android·linux·c++·编译·faiss
棒棒AIT3 小时前
mac 苹果电脑 Intel 芯片(Mac X86) 安卓虚拟机 Android模拟器 的救命稻草(下载安装指南)
android·游戏·macos·安卓·mac
fishwheel3 小时前
Android:Reverse 实战 part 2 番外 IDA python
android·python·安全
消失的旧时光-19436 小时前
Android网络框架封装 ---> Retrofit + OkHttp + 协程 + LiveData + 断点续传 + 多线程下载 + 进度框交互
android·网络·retrofit
zcychong6 小时前
Handler(二):Java层源码分析
android
Chef_Chen8 小时前
从0开始学习R语言--Day58--竞争风险模型
android·开发语言·kotlin
用户2018792831678 小时前
演员的智能衣橱系统之Selector选择器
android
CYRUS_STUDIO9 小时前
OLLVM 混淆 + VMP 壳照样破!绕过加壳 SDK 的核心检测逻辑
android·逆向·汇编语言
Kapaseker9 小时前
憋了一周了,12000字深入浅出Android的Context机制
android