gradle本地仓库与maven本地仓库是相互独立和冗余的

1.maven的localRepository 和gradle的GRADLE_USER_HOME 不能指定同一目录【1】,会乱套!!!

2.gradle仓库与maven仓库是相互独立和冗余的,gradle仓库默认位置:C:\Users\{userName}\.gradle\caches\modules-2\files-2.1

3.在build.gradle中可以设置从maven仓库拷贝jar包:

buildscript {
  repositories {
    mavenLocal()
    maven { url 'http://maven.aliyun.com/nexus/content/groups/public' }
    mavenCentral()
    jcenter()
  }
}

 

 注释:

【1】Gradle 使用Maven的本地仓库(坑)
kcp606 2018-08-13 20:25:02 8784 收藏 3
分类专栏: 配置开发环境 构建工具
版权

    尝试了半天, 最后发现 Gradle 构件的目录结构就和maven不同, 他就不打算和Maven兼容!!!!

Gradle 目录结构(和Go类似)

├── com.alibaba
│   └── fastjson
│       └── 1.2.47

Maven目录结构

└── org
    └── projectlombok
        └── lombok
            └── 1.18.2

    官方文档, 配置采用Maven本地缓存仓库

    原文: Gradle uses the same logic as Maven to identify the location of your local Maven cache. If a local repository location is defined in a settings.xml, this location will be used. The settings.xml in USER_HOME/.m2 takes precedence over the settings.xml in M2_HOME/conf. If no settings.xml is available, Gradle uses the default location USER_HOME/.m2/repository.

    翻译: Gradle使用与Maven相同的逻辑来标识本地Maven缓存的位置。如果在settings.xml中定义了本地存储库位置,则将使用此位置。 USER_HOME / .m2中的settings.xml优先于M2_HOME / conf中的settings.xml。如果没有可用的settings.xml,Gradle将使用默认位置USER_HOME / .m2 / repository。

    他只是去那个目录下去找找有没有对应的构件, 有就复制过来(~/.gradle/caches/modules-2/files-2.1/), 并建立一个新的目录结构,并不打算复用
    所以, 如果你是Maven和Gradle 混着用的话, 两个本地仓库是互相独立和冗余的, 惊不惊喜 
————————————————
版权声明:本文为CSDN博主「kcp606」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/kcp606/java/article/details/81636426

 

 

 

你可能感兴趣的:(java)