JDK 1.8(C:\ ...)中没有附加任何IDEA注释,因此可能无法发现某些问题。

72

在Android Studio 3.1.2中,我突然在编辑器顶部以黄色胶带框架的形式收到以下消息:

没有将IDEA注释附加到JDK 1.8(C:\ Program Files \ Android \ Android Studio \ jre),某些问题将无法找到

我还在“编辑配置”中收到了一个警告:

未找到默认活动

如何解决这些问题?

12个回答

179

解决方法

  • 关闭 Android Studio。
  • 进入 C:\Users\用户名\.android 目录并将 build-cache 文件夹重命名为 build-cache.bak
  • 进入 C:\Users\用户名\.AndroidStudio3.2\system 目录并分别将以下文件夹重命名:

    caches 重命名为 caches.bak

    compile-server 重命名为 compile-server.bak

    compiler 重命名为 compiler.bak

    conversion 重命名为 conversion.bak

    external_build_system 重命名为 external_build_system.bak

    frameworks 重命名为 frameworks.bak

    gradle 重命名为 gradle.bak

    resource_folder_cache 重命名为 resource_folder_cache.bak

  • 重新打开 Android Studio 并重新打开您的项目。


3
这也适用于 Android:在布局文件中出现“xxxx 未知属性”错误警告。 - Arie Agung
1
这对我帮助很大,谢谢。我认为这个解决方案可以行得通,因为其中一些文件已经损坏了。当我们重命名文件夹时,AS会创建一个新的文件夹(或者下载?不确定)。 - Louis
11
这种方法实际上是将文件重命名,这样Android Studio就无法识别它了。这种方法实际上与删除该文件相同。我只是将这些文件重命名为备份,以防在Android Studio中出现错误。所以,您可以通过删除这些文件来解决问题。 - Levi Rizki Saputra
1
谢谢,你知道是什么原因引起的吗? - sanevys

22

我从2018年10月开始使用3.2.1版本(1个月)。
但今天在AndroidStudio中启动我的项目时出现了很多错误。

我尝试了无效缓存并重新启动,但它没有帮助我。

所以,我打开了文件夹C:\Users\{username}
在那里,我找到了三个文件夹:一个是真正的版本 - .AndroidStudio3.2,另外两个是旧版本 - .AndroidStudio3.1.AndroidStudio2.3

输入图像描述

我只能删除实际版本的文件夹,但我删除了所有文件夹。(因为AndroidStudio中没有重要的用户设置)。

然后我重新启动了AndroidStudio,并选择了“不导入设置”。如下所示:

输入图像描述

这种方法对我有效。


只需从当前版本中删除system文件夹并用旧版本替换它,这对我起作用了。 - Neelay Srivastava

13

前往文件 -> 无效缓存 / 重新启动... -> 无效缓存和重新启动


5
我也遇到了同样的问题,自从上周在3.2.1版本上使用时就卡住了。
对我有用的方法是删除(或将其作为备份移动)位于“C:\Users{username}\"下的“.AndroidStudio3.2”文件夹(对于您来说将是.AndroidStudio3.1),然后重新打开Android Studio。
启动时,我选择从上一个版本导入设置并继续。 它会重新配置所有设置。
您可以尝试这个方法。

4

我的答案可能有点晚,但以下是解决该问题的方法:

  1. 关闭Android Studio。

  2. 打开 C:\Users\UserName\.android 并将 build-cache 文件夹重命名为 build-cache.bak

  3. 打开 C:\Users\UserName.AndroidStudio3.2\system。将以下文件重命名:

    • caches —> caches.bak
    • compiler —> compiler.bak
    • compile-server —> compile-server.bak
    • conversion —> conversion.bak
    • external_build_system —> external_build_system.bak
    • frameworks —> frameworks.bak
    • gradle —> gradle.bak
    • resource_folder_cache —> resource_folder_cache.bak
  4. 重新启动Android Studio;它会再次生成那些文件夹。

  5. 成功后,删除 .bak 文件。


请问如果链接无法工作,您能否添加更多信息? - Giulio Caccin
我已经编辑了我的答案,并提供了我解决问题所遵循的步骤。 - Taki

3
我要分享一些我刚发现的关于“使缓存无效/重启”的信息,我认为这与3.2.1版本密切相关。这可能解释了为什么它对某些人有效,而对其他人无效。我发现了一个不同的问题,但我认为它可能与这个问题有关,所以值得一试。
有时,“使缓存无效/重启”无法清除打开项目的缓存。我不确定是什么导致了这种情况,但我遇到了这种情况。我纠正问题的方法是将项目目录名称重命名,使用新的重命名名称打开Android Studio,然后运行“使缓存无效/重启”。然后我关闭了项目,将项目目录名称重新改回原来的名称,然后使用原始名称打开Android Studio,这样就解决了我的问题。
在我的情况下,我遇到的问题是Android Studio未正确显示文件内容,但当我使用外部查看器检查文件时,文件实际上具有正确的内容。因此,我猜想“使缓存无效/重启”可以解决这个问题。但在我使用上述小技巧之前,它并没有起作用。这就是我分享我的发现的原因,因为它可能解释了为什么“使缓存无效/重启”对某些人有效,而对其他人无效。再次强调,我还不知道项目如何进入无法使缓存无效的状态。可能是文件锁问题,或者在Android Studio重新启动之前,负责清除打开项目缓存的某个后台执行器任务未运行。
更新:我的一个项目中实际上出现了完全相同的问题。直到我使用了重命名项目、打开它、使缓存无效/重启、关闭项目、将项目名称改回原始名称并打开它等小技巧,才使“使缓存无效/重启”起作用。然后,“No IDEA annotations attached to the JDK 1.8”消息就消失了。
我尝试过的一些事情没有起作用,比如关闭有问题的项目,并从另一个项目运行“使缓存无效/重启”。因此,说“使缓存无效/重启”有时对已打开的项目无效并不完全准确。我已通过“提交反馈”渠道向android组报告了这个问题。他们应该能够找出内部代码问题所在。找到我的帖子并添加你遇到了同样的问题会很有用。

新更新:起初看起来我描述的技术修复了问题,但今天早上再次访问该项目时,错误信息“未附加到JDK 1.8的IDEA注释”又出现了。我无法解释我观察到的情况。我还发现,原本没有这个错误消息的项目现在都出现了同样的错误消息。 - Tom Rutchik
1
我的最后更新:Levi Ricki Saptra的解决方案似乎已经解决了问题。他的解决方案对我来说看起来是一种手动强制清除所有项目缓存的方法。你会认为“使缓存无效/重新启动”应该等同于他的解决方案,但事实并非如此。干得好,Levi! - Tom Rutchik
当你说“不正确地显示文件内容”时,你的 .java 文件是否看起来像具有完全不同内容的 XML 文件?这让我困扰了几个星期。我通常从GitHub导入我的项目并重新开始,非常恼人,而且它仍然会发生。 - Mairyu
是的,那正是我看到的! - Tom Rutchik

3
对我而言,点击黄色通知栏右上方的“附加注释”按钮有帮助。
以下资源也有帮助:https://www.jetbrains.com/help/idea/annotating-source-code.html 但要注意:

注释构件需要JDK 1.8或更高版本。如果使用JDK 1.5、1.6或1.7编译项目,请改用annotations-java5构件。


3

对于Windows操作系统:

C:\Users\username\.AndroidStudio3.3\system目录下删除caches文件夹,重新导入项目即可解决问题。

请确认您的Android Studio版本后再进行缓存文件夹的删除。


3
我刚找到了解决方案。请按照以下路径操作:
File -> Invalidate Caches / Restart...

0
以下步骤解决了我的错误:
第1步:在任何地方搜索(shift + shift),然后输入“设置JDK”作为搜索文本。

enter image description here

步骤2:从列表中选择某个内容(我选择了高亮显示的内容),

enter image description here

就是这样,你现在不应该再看到错误了。


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