mavenCentral()、jCenter()和mavenLocal()之间的区别?
实际上,我正在研究mavenCentral()、jCenter()和mavenLocal()之间的区别?,maven,gradle,android-gradle-plugin,Maven,Gradle,Android Gradle Plugin,实际上,我正在研究build.gradle文件。在某些情况下,我发现有时他们在存储库部分使用mavenCentral()、jCenter()和mavenLocal()。有时他们也使用URL。所以我的脑海里出现了一些问题 i) mavenCentral()、jCenter()和mavenLocal()之间的区别 ii)我最应该使用哪一种 iii)是否存在任何与绩效相关的问题 实际上,这三个都是Maven存储库。我们通过使用maven的URL地址或其在本地文件系统中的位置来使用这些maven存储库进
build.gradle
文件。在某些情况下,我发现有时他们在存储库部分使用mavenCentral()
、jCenter()
和mavenLocal()
。有时他们也使用URL。所以我的脑海里出现了一些问题
i) mavenCentral()、jCenter()和mavenLocal()之间的区别
ii)我最应该使用哪一种
iii)是否存在任何与绩效相关的问题
实际上,这三个都是Maven存储库。我们通过使用maven的URL地址或其在本地文件系统中的位置来使用这些maven存储库进行构建 使用URL:
repositories {
maven { url("https://plugins.gradle.org/m2/") }
}
repositories {
maven { url '../maven-repo' }
}
repositories {
mavenLocal()
// jcenter() // <- remove it
mavenCentral() // <- add it
maven { url "https://plugins.gradle.org/m2/" }
maven { url "https://repo.spring.io/plugins-release/" }
}
使用本地文件系统:
repositories {
maven { url("https://plugins.gradle.org/m2/") }
}
repositories {
maven { url '../maven-repo' }
}
repositories {
mavenLocal()
// jcenter() // <- remove it
mavenCentral() // <- add it
maven { url "https://plugins.gradle.org/m2/" }
maven { url "https://repo.spring.io/plugins-release/" }
}
Gradle有三个“别名”,当我们将Maven存储库添加到构建中时,可以使用它们。这些别名是:
mavenCentral()别名意味着依赖项是从数据库获取的 用于访问此存储库的URL为。存储库的名称是MavenRepo
jcenter()别名意味着依赖项是从
mavenLocal()别名表示从本地Maven存储库获取依赖项 资源链接:
Jcenter vs.mavenCentral jcenter()和mavenCentral()是Android Studio中Gradle插件的存储库 Android Studio的早期版本使用了mavenCentral(),一段时间后,它切换到了jcenter 这是因为jcenter()在性能和内存占用方面优于mavenCentral()
- Jcenter是世界上最大的Java存储库
- Jcenter通过CDN服务,使用https协议,高度 使用http 协议
- Jcenter是mavenCentra的超集,包括许多额外的 罐子
- Jcenter性能优于mavenCentral
- mavenCentral将自动下载许多与IDE相关的索引, 而且这些都是不经常使用,这是不需要的
最近更新: 更新:24-02-2021,共: 公告链接: Maven中心链接: 解决方法:
repositories {
maven { url("https://plugins.gradle.org/m2/") }
}
repositories {
maven { url '../maven-repo' }
}
repositories {
mavenLocal()
// jcenter() // <- remove it
mavenCentral() // <- add it
maven { url "https://plugins.gradle.org/m2/" }
maven { url "https://repo.spring.io/plugins-release/" }
}
存储库{
mavenLocal()
//jcenter()//
更新:为了更好地支持社区的迁移,JFrog将JCenter新包版本提交截止日期延长至2021年3月31日
为了澄清这一点,JCenter存储库将在2022年2月1日之前提供12个月的软件包。只有JCenter REST API和UI将在2021年5月1日被屏蔽
按第页-
JCenter弃用和服务结束
JFrog是一家维护许多Android项目使用的JCenter工件库的公司,最近宣布了JCenter的弃用和即将退役。根据该公司的消息,JCenter将允许下载现有工件,直到2022年2月1日
在JCenter上发布工件的开发人员应该开始将其软件包迁移到新主机上,例如。我仍然没有得到一件事:JCenter和MavenCentral CDN都只能付费使用?JFrog的Bintray JCenter maven repository…这是我很久以来听到的最糟糕/令人困惑的名字…MavenCentral提供了更多的保证,即tifacts不会改变。Bintray允许维护人员覆盖现有工件,这很方便,但最终会被恶意用户利用。现在,jcenter计划在返回maven central之前关闭