我已经导入了一个项目到Android工作室的几个子项目。
我想运行一个子项目。
我成功地完成了这个子项目的构建。Gradle作为一个模块。
为了运行它,我去运行>编辑配置> + > Android应用程序。
问题:当我尝试选择一个模块时,下拉列表中没有显示。
为什么会这样?
编辑:它在Groovy下显示为一个模块,但在Android应用程序下不显示。我如何让它显示在Android应用程序?
我已经导入了一个项目到Android工作室的几个子项目。
我想运行一个子项目。
我成功地完成了这个子项目的构建。Gradle作为一个模块。
为了运行它,我去运行>编辑配置> + > Android应用程序。
问题:当我尝试选择一个模块时,下拉列表中没有显示。
为什么会这样?
编辑:它在Groovy下显示为一个模块,但在Android应用程序下不显示。我如何让它显示在Android应用程序?
当前回答
在我的案例中,问题在于SDK许可接受。 通过SDK管理器下载合适的SDK版本和许可验收解决了这个问题。
其他回答
所有的答案都对我没用。最后,我单击Run > Edit Configuration。在左侧,u可以选择一个新的主模块并删除到已删除的主模块中。
我终于弄清楚了为什么当我为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')
然后同步它,你会发现它显示在列表中。
似乎不同的解决方案适用于不同的人,对我来说,只是关闭项目并重新导入就解决了问题。
在我的情况下,问题来自build.gradle(app)中的更高(或未下载)compileSdkVersion和targetSdkVersion。 这是因为克隆项目在另一台电脑,没有下载该sdk镜像。
在我的案例中,问题在于SDK许可接受。 通过SDK管理器下载合适的SDK版本和许可验收解决了这个问题。