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

相关推荐
百锦再4 小时前
React编程高级主题:测试代码
android·前端·javascript·react.js·前端框架·reactjs
2501_916008895 小时前
全面介绍Fiddler、Wireshark、HttpWatch、SmartSniff和firebug抓包工具功能与使用
android·ios·小程序·https·uni-app·iphone·webview
玉梅小洋5 小时前
Windows 10 Android 构建配置指南
android·windows
Libraeking7 小时前
视觉篇:Canvas 自定义绘图与高级动画的华丽圆舞曲
android·经验分享·android jetpack
Fushize7 小时前
多模块架构下的依赖治理:如何避免 Gradle 依赖地狱
android·架构·kotlin
Jomurphys8 小时前
Kotlin - 类型别名 typealias
android·kotlin
Haha_bj8 小时前
Flutter ——flutter_screenutil 屏幕适配
android·ios
zh_xuan8 小时前
kotlin lazy委托异常时执行流程
开发语言·kotlin
Haha_bj9 小时前
Flutter ——device_info_plus详解
android·flutter·ios
前端小伙计9 小时前
Android/Flutter 项目统一构建配置最佳实践
android·flutter