我已经导入了一个项目到Android工作室的几个子项目。

我想运行一个子项目。

我成功地完成了这个子项目的构建。Gradle作为一个模块。

为了运行它,我去运行>编辑配置> + > Android应用程序。

问题:当我尝试选择一个模块时,下拉列表中没有显示。

为什么会这样?

编辑:它在Groovy下显示为一个模块,但在Android应用程序下不显示。我如何让它显示在Android应用程序?


当前回答

这些类型的问题与AndroidManifest.xml有关, 所以请检查AndroidManifest文件中的bug。

其他回答

在应用程序的.iml文件中添加模块,如下所示:

orderEntry type="module" module-name="yourmoudlename" exported="" 

这对我很管用。

我终于弄清楚了为什么当我为com.android.library模块添加AndroidTests配置时,该模块没有显示。

如果在应用程序的构建中包含库模块。这样Gradle:

compile project(':yourlibrary')

因为对于库模块,它默认是用发布模式编译的,你不能为它运行Android测试,这就是为什么它不会显示在模块列表中。 我做了如下修改:

将以下配置添加到构建中。你的库模块的Gradle:

     publishNonDefault true

通过进行以下更改,您可以通过编辑构建来调试编译库。Gradle你的应用模块如下:

-    compile project(':yourlibrary')
+    debugCompile project(path: ':yourlibrary', configuration: 'debug')
+    releaseCompile project(path: ':yourlibrary', configuration: 'release')

然后同步它,你会发现它显示在列表中。

在导入之前,请确保项目没有错误。在我的情况下,我必须在导入之前清理和重建项目。

在Android Studio 3.1.2中,我也遇到了同样的问题。我通过点击“File->Sync Project with Gradle Files”解决了这个问题。这对我很有用。:)

在我的情况下,问题来自build.gradle(app)中的更高(或未下载)compileSdkVersion和targetSdkVersion。 这是因为克隆项目在另一台电脑,没有下载该sdk镜像。