跳转至

Gradle

依赖和插件两个关于仓库的设置是不一样 之前一直以为是同一个 Person: - plugins 和dependencies 对他们的远程仓库设置是怎么样的

ChatGPT: - 在 Gradle 构建脚本中,pluginsdependencies 使用不同的语法来指定远程仓库。

plugins 远程仓库设置

在应用插件时,通常需要指定插件所在的远程仓库。这可以通过在构建脚本的顶层使用 pluginManagement 块来实现。在 pluginManagement 块中,你可以指定插件仓库的地址,并且也可以包括 Gradle 插件 portal:

pluginManagement {
    repositories {
        gradlePluginPortal()
        maven {
            url "https://maven.example.com/repo"
        }
    }
}

在上述例子中,gradlePluginPortal() 添加了 Gradle 插件 portal 作为插件的默认仓库,而 maven 块添加了一个自定义的 Maven 仓库。

dependencies 远程仓库设置

对于 dependencies,你可以在构建脚本的顶层使用 repositories 块来指定远程仓库。这是一个例子:

repositories {
    mavenCentral()
    jcenter()
    maven {
        url "https://maven.example.com/repo"
    }
}

在这个例子中,mavenCentral()jcenter() 添加了 Maven Central 和 JCenter 作为默认的 Maven 仓库,而 maven 块添加了一个自定义的 Maven 仓库。

需要注意的是,对于 plugins,Gradle 插件 portal 是默认的仓库,而对于 dependencies,Maven Central 和 JCenter 是默认的 Maven 仓库。通常,你只需添加自定义仓库,而不必显式指定默认的仓库,除非你有特殊的要求。

而且pluginManagement是在settings.gradle中的 而repositories是设置在build.gradel里的

Gradle 插件块(plugins 块)用于声明和应用插件,而不涉及直接的依赖下载。插件的相关信息,包括插件的二进制文件和元数据,通常会被 Gradle 下载到 Gradle 的本地缓存中,而不是 Maven 本地仓库

buildSrc 内是项目内自定义的gradle插件

回到页面顶部