Gradle
依赖和插件两个关于仓库的设置是不一样 之前一直以为是同一个 Person: - plugins 和dependencies 对他们的远程仓库设置是怎么样的
ChatGPT:
- 在 Gradle 构建脚本中,plugins
和 dependencies
使用不同的语法来指定远程仓库。
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插件