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

相关推荐
Digitally2 小时前
如何在安卓手机/平板上找到下载文件?
android·智能手机·电脑
硬件学长森哥5 小时前
Android影像基础--cameraAPI2核心流程
android·计算机视觉
前行的小黑炭9 小时前
Android 协程的使用:结合一个环境噪音检查功能的例子来玩玩
android·java·kotlin
阿华的代码王国10 小时前
【Android】内外部存储的读写
android·内外存储的读写
inmK113 小时前
蓝奏云官方版不好用?蓝云最后一版实测:轻量化 + 不限速(避更新坑) 蓝云、蓝奏云第三方安卓版、蓝云最后一版、蓝奏云无广告管理工具、安卓网盘轻量化 APP
android·工具·网盘工具
giaoho13 小时前
Android 热点开发的相关api总结
android
咖啡の猫15 小时前
Android开发-常用布局
android·gitee
程序员老刘15 小时前
Google突然“变脸“,2026年要给全球开发者上“紧箍咒“?
android·flutter·客户端
Tans515 小时前
Androidx Lifecycle 源码阅读笔记
android·android jetpack·源码阅读
雨白16 小时前
实现双向滑动的 ScalableImageView(下)
android