You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Gradle的DependencyResolutionManagement中使用FlatDir配置本地依赖路径异常

解决Gradle本地Jar依赖路径解析错误问题

我需要在settings.gradle.kts的dependencyResolutionManagement块中,将根项目目录下的本地Jar依赖(存放在plugins文件夹)作为main模块的buildscript classpath引入,但Gradle错误地将路径解析为C:\Users\Name\.gradle\daemon\7.5\plugins。

我的settings.gradle.kts代码如下:

pluginManagement {
    repositories {
        google()
        mavenCentral()
    }
}

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        maven { url = uri("https://jitpack.io") }
        
        flatDir { dirs = setOf(File("plugins")) }
    }
}

rootProject.name = "AndroidApp"
include(":main", ":base")

我尝试了以下几种方式,但都无法正确指向项目根目录:

  • File(".").absolutePath:返回C:\Users\Name\.gradle\daemon\7.5\.
  • rootProject.path:返回:
  • rootProject.children.size:返回0

解决方案

在dependencyResolutionManagement阶段,rootProject还未完成初始化,所以不能通过它获取根目录路径。需要使用Gradle提供的settingsDir属性,它直接指向settings.gradle.kts所在的项目根目录。修改flatDir配置如下:

flatDir { dirs = setOf(File(settingsDir, "plugins")) }

这样就能正确将项目根目录下的plugins文件夹作为本地Jar仓库引入。

内容的提问来源于stack exchange,提问作者You Qi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 11:50:24