从 Maven 存储库获取工件的所有文件

Getting all files of an artifact from maven repository

我们的组织在一个孤立的网络中工作,所以当我们想要使用库时,我们需要从 maven-central 检索它们,然后上传到我们自己的 maven 存储库。

我正在寻找下载所需依赖项的所有文件的方法, 我已经使用 gradle gradle eclipseClasspath 来执行此操作,但它并未下载所有文件。例如 org.jacoco:jacoco:0.7.8 包含一个 zip 文件,当我查看 GRADLE_USER_HOME 时找不到该 zip。

build.gradle:

apply plugin: 'java'
apply plugin: 'eclipse'
repositories {
    mavenCentral()
}
dependencies {
    compile 'org.jacoco:jacoco:0.7.8'
}

我该怎么办?

您可以使用 this gradle task 将依赖项下载到本地目录。

我想要一个简单的解决方案,现在我做了这个丑陋的 https://github.com/idosu/scripts/blob/master/gradle/full-download-from-central.gradle

用法:

apply from: 'https://raw.githubusercontent.com/idosu/scripts/master/gradle/full-download-from-central.gradle'
dependencies {
    compile 'org.jacoco:jacoco:0.7.8'
}

windows: set GRADLE_USER_HOME=deps & gradle --no-daemon -b eclipseClasspath createRepo

shell: export GRADLE_USER_HOME=deps; gradle --no-daemon -b eclipseClasspath createRepo

结果将在build/repo


更好的方法是弄清楚eclipseClasspath如何解决所有父 poms 的所有依赖关系。因为使用 project.configurations.compile.resolvedConfiguration.lenientConfiguration.allModuleDependencies 并不能解决问题