缺少 Android javax.annotation.processing 包.不能使用 AbstractProcessor [英] Android javax.annotation.processing package missing. Can't use AbstractProcessor

查看:33
本文介绍了缺少 Android javax.annotation.processing 包.不能使用 AbstractProcessor的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

由于某种原因 javax.annotation.processing 包丢失.我发现这个stackoverflow帖子关于同样的问题,但它给出了断开的链接回答.尝试了一些谷歌建议的东西,但没有结果.

For some reason javax.annotation.processing package is missing. I found this stackoverflow post about the same issue, but it gives broken link as answer. Have tried some stuff that google suggest, but with no results.

推荐答案

我假设你想在 Android Studio 中编写注解处理器,并且在这种情况下有一个非常常见的项目结构:Android app, Java lib with @interface 定义和带有 AbstractProcessor 子类的 Java 库.

I assume that you want to write annotation processor in Android Studio and have a very common project structure in this case: Android app, Java lib with @interface definitions and Java lib with AbstractProcessor subclasses.

我遇到了同样的问题,但有一件事有所帮助:

I ran into the same problem and one thing helped:

  • 从项目布局中完全删除您的 Java 模块.
  • 确保只有您的代码可以存活,删除模块目录中的所有(或者可能只是 .iml 文件就足够了?)其他内容.
  • 再次将您的源代码添加为模块 Java 库.现在一切正常.
  • Completely remove your Java module from project layout.
  • Make sure that only your code survives, delete all (or maybe just .iml file would suffice?) other stuff in module directory.
  • Add your sources again as module Java Library. Everything should work now.

我认为这是因为我首先将模块添加为 Android 库,然后手动将其更改为 Java 库(gradle java 插件的默认结构).但是 .iml 无论如何都是来自 Android lib 模块结构.

I think that was because first I added module as Android library, then manually changed it to look like Java library (default structure for gradle java plugin). But .iml was from Android lib module structure anyway.

这篇关于缺少 Android javax.annotation.processing 包.不能使用 AbstractProcessor的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆