Gradle在本地Maven存储库中找不到现有的依赖项

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Gradle在本地Maven存储库中找不到现有的依赖项相关的知识,希望对你有一定的参考价值。

我需要生成一个项目的存档,然后可以在没有Internet访问权限的计算机上完全脱机构建该项目的存档。这意味着本地gradle distributionUrl和本地依赖项。

我正在使用出色的gradle-offline-dependencies插件将所有所需的buildscript / android项目依赖项从在线存储库转储到本地文件夹。运行gradle任务后,我可以找到一个看似正确的本地Maven存储库:

ls <offline-repository>/com/android/support/appcompat-v7/26.0.0
appcompat-v7-26.0.0.aar  appcompat-v7-26.0.0.pom  appcompat-v7-26.0.0-sources.jar

它似乎包含所有必需的依赖项,始终遵循正确的命名约定:<offline-repository>/<group-id-with-slashes>/<artifact-id>/<version>/<artifact-id>-<version>.<extension>

我像这样在根build.gradle中引用此本地存储库:

allprojects {
    if (gradle.startParameter.isOffline()) {
        repositories {
            maven { url offlineRepositoryRoot }
        }
    } else {
        // ...
    }
}

offlineRepositoryRoot的值由前面提到的插件管理,并且是正确的(用println选中)。但是,当我运行脚本时,我遇到了一些类似这样的错误:

$ ./gradlew --offline assembleDebug
   (...)
> Could not resolve all files for configuration ':app:assembleDebug'.
   > Could not find com.squareup.okhttp3:okhttp-ws:3.4.1.
     Required by:
         project :app
   (...)

如果我签入脱机存储库:

ls offline-repository/com/squareup/okhttp3/okhttp-ws/3.4.1
okhttp-ws-3.4.1.jar  okhttp-ws-3.4.1-javadoc.jar  okhttp-ws-3.4.1.pom  okhttp-ws-3.4.1-sources.jar

我做错了什么?预先感谢。

答案

删除“ out”和“ build”文件夹,然后刷新“ gradle”。

以上是关于Gradle在本地Maven存储库中找不到现有的依赖项的主要内容,如果未能解决你的问题,请参考以下文章

Maven:包括在公共存储库中找不到的 jar

maven 在我的存储库中找不到原型

MVN 安装,在本地存储库中找不到工件

Gradle 不在本地 Maven 存储库中搜索包。怎么修?

Gradle 依赖项未列出本地 maven jar 的依赖项

在 JBoss 存储库中找不到工件 com.gemstone:gemfire-modules:jar:7.0.1