java - 从Android应用程序中的其他模块引用公共(public)模块

标签 java android gradle module dependencies

我正在创建一个两个模块的 Android 应用程序。

一个模块是普通的平板电脑/手机模块,另一个是 WearOS 模块。

但是还有第三个模块称为“common”。公共(public)模块编译没有错误。它有java类、资源等。它有

import static com.myapp.common.R.*;

在主java类中,需要资源的地方(IDE建议在资源引用说明下的红线处添加该内容)。

这三个包名称类似于:

com.myapp.common

com.myapp.wear_module

com.myapp.phone_tablet_module

应用程序 build.gradle 文件包含

implementation project(':app:common')

磨损模块build.gradle文件包括

 implementation project(':app:common')

手机/平板电脑模块包括

 implementation project(':app:common')

但是我看到公共(public)模块的资源和java文件在其他模块中没有被引用。此外,我看到一个奇怪的提示,例如:

ERROR: Unable to resolve dependency for ':app@debug/compileClasspath': Could not resolve project :app:common

IDE 建议添加实现行,但它已经存在了。如果我接受,它会添加另一个。

有什么问题吗。如何将公共(public)模块导入到其他模块中?

最佳答案

尝试这个实现项目(':common')

然后在settings.gradle中确保像这样包含公共(public)模块

include ':app', ':common', ':wear_module', ':phone_tablet_module' // as this is the modules names
rootProject.name='MyApp'

关于java - 从Android应用程序中的其他模块引用公共(public)模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60465084/

相关文章:

枚举实例的Java延迟加载

android - vysor 如何在非 root 设备上创建触摸事件?

php - PHP exec输出与命令行输出不同吗?

google-app-engine - 如何在使用 Gradle 的 AppEngine 项目中使用 Kotlin

java - 多证书导入问题

java - 交换多字节的顺序

java - 折叠工具栏和 fragment

spring-boot - 如何使用gradle将时间戳附加到生成的jar中?

java - Quartz Spring CronTrigger 触发的次数比配置的多

android - 如何使用 mp4parser 将元数据写入 mp4 文件?