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下载器

相关推荐
pengyu10 小时前
【Kotlin 协程修仙录 · 筑基境 · 后阶】 | 调度器的艺术:Dispatchers 四大护法与 withContext 性能密码
android·kotlin
uElY ITER10 小时前
MySQL 中如何进行 SQL 调优
android·sql·mysql
xxjj998a10 小时前
Laravel3.x:奠定现代PHP框架的重要里程碑
android·开发语言·php
千码君201611 小时前
flutter: 分享一下基于trae cn 构建的过程
java·vscode·flutter·kotlin·trae
Yang-Never11 小时前
Git -> Git Worktree 工作树
android·开发语言·git·android studio
xingpanvip11 小时前
星盘接口开发文档:日运语料接口指南
android·开发语言·前端·css·php·lua
计算机安禾11 小时前
【Linux从入门到精通】第42篇:深入理解Linux内存管理
android·linux·运维
XD74297163612 小时前
科技早报晚报|2026年5月1日:本地优先文档、安卓离线 IDE 与双击即用密码库,今天最值得跟进的 3 个机会
android·ide·科技·科技新闻·开发者工具·本地优先
计算机安禾12 小时前
【Linux从入门到精通】第40篇:LAMP/LNMP环境一键部署脚本实战
android·linux·adb
speop12 小时前
Reasoning kingdom chapter13
android·java·python