Android Studio:我遇到了“java.util.NoSuchElementException”错误,但是我无法跟踪该错误。

14
我得到了以下错误:

java.util.NoSuchElementException

当我点击它以查看更多信息时,它显示如下内容:

Caused by: java.util.NoSuchElementException

与先前的错误不同,它没有显示错误的来源。我该怎么解决这个问题?我浏览了所有的文件,似乎没有任何东西给我一个错误。欢迎提供任何提示或建议。

你找到任何解决方案了吗? - Jinu
不,我尝试设置断点,但没有任何作用。 - Curt Rand
执行 aapt 失败,NoSuchElementException 异常抛出在 AbstractIndexedListIterator.next() 中。 - Izabela Orlowska
3个回答

34

@Izabela 是对的。然而,在我的情况下,我浏览到 文件 -> 设置 -> 构建、执行、部署 -> 快速运行 并通过取消勾选顶部的复选框(默认情况下启用)来禁用它。它对我来说完美地工作(直到现在)。我在 Ubuntu 16.04 LTS 上运行 Android Studio 3.0.1。


你找到原因了吗?对我也有效(Android Studio 3.2 beta 4)。谢谢。 - ree1991
@ree1991 我不确定实际原因,但请看Izabela Orlowska在Akshay Shah的解决方案下的评论 :-) - M. Arabi Hasan Sakib

12

尝试将以下内容添加到您的gradle.properties文件中

android.enableAapt2=true

这是Gradle插件代码中调用AAPT1的一个错误。它已经被修复,但没有被挑选,应该在下一个发布版本中可用(应该在3.2金丝雀版3及更高版本中修复)。 这仅影响AAPT1。删除android.enableAapt2=false标志(或在最后添加android.enableAapt2=true)将使代码不会触发此代码路径。 - Izabela Orlowska
此选项未被弃用且没有任何影响。 - kingston

11

修复此问题的方法有两种:

第一种适用于Android Studio 3.1或<3.2版本

  1. 在gradle.properties文件中添加 android.enableAapt2=false
  2. 禁用即时运行(Ctrl+shift+A(win+Linux)或Command+shift+A(Mac),然后搜索即时运行)。

第二种适用于Android Studio 3.2或更高版本:

  1. 更新Android Studio到3.2版本
  2. 在gradle.properties文件中添加 android.enableAapt2=true
  3. 现在可以保持即时运行功能启用。

android.enableAapt2选项未被弃用,也没有任何影响。 - kingston

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接