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

Android Dagger Hilt模块通信:Module1如何访问互不依赖的Module2?

让Module1访问Module2的配置方案

这完全可行,直接通过Gradle添加模块依赖即可,具体步骤如下:

1. 修改Module1的构建配置文件

根据你使用的Gradle语法(Groovy或Kotlin DSL),在Module1的build.gradle(或build.gradle.kts)的dependencies块中添加对Module2的依赖:

Groovy 语法(build.gradle)

dependencies {
    // 保留原有依赖,新增以下行
    implementation project(':Module2')
}

Kotlin DSL 语法(build.gradle.kts)

dependencies {
    // 保留原有依赖,新增以下行
    implementation(project(":Module2"))
}

2. 同步Gradle项目

执行Gradle同步操作:

  • 在Android Studio中点击右上角的「Sync Project with Gradle Files」按钮
  • 或者在终端运行命令:
./gradlew sync

关键注意事项

  • 确保Module2中需要被Module1访问的类、接口等的访问修饰符为public(Android默认是包级私有,必须显式声明才能跨模块访问)
  • 禁止循环依赖:不要给Module2添加对Module1的依赖,否则会触发Gradle循环依赖错误导致构建失败
  • 依赖类型选择:
    • 若仅Module1内部使用Module2的功能,用implementation即可,能缩小依赖传递范围
    • 若需要让上层的App模块也能通过Module1访问到Module2的API,改用api project(':Module2')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 16:19:53