如何在我的Android模块中添加java gradle子模块?

Igo*_*pov 5 java android intellij-idea gradle

假设我在使用Gradle的IntelliJ Idea中有一个Android应用程序项目.叫它MyApplication.我想要做的是添加一个普通的java库模块(不是Android库项目)作为子模块MyApplication.让我们称这个模块为a testlib.然后在构建整个项目时,我希望将此模块编译为jar并包含在MyApplication的/ libs文件夹中.

我尝试过:我创建了一个子模块testlib并将其作为MyApplication的依赖项包含在内,但是我收到了以下警告:

警告:Gradle:模块'testlib'不会被编译.遗憾的是,您不能在一个项目中使用非Gradle Java模块和Android-Gradle模块.

这甚至可能吗?

Igo*_*man 0

IntelliJ IDEA 不支持单个项目中的 Gradle 和非 Gradle 模块。JetBrains 在其论坛中的评论清楚地说明了这一点。

解决方案是将 Maven 模块转换为 Gradle 模块,或者将项目一分为二。使用后一种方法,如果您在构建 Gradle 项目之前使用 Maven 构建普通 java 库模块,您仍然可以将其用作 Android 应用程序项目中的依赖项。

请注意在多模块 Gradle 项目中使用不同的 Java 语言源代码级别。由于 IntelliJ IDEA 或 Gradle 中的错误,IntelliJ IDEA 无法正确处理它们。(是否应在 IDE 或 Gradle 中修复此问题尚待讨论。)