在Android Studio 2.2中启用“注释处理器”选项

时间:2016-07-28 17:08:31

标签: java android annotations android-studio-2.2

我正在尝试在我的项目中使用java 8,为此我添加了jack编译器。

启用插孔后,我开始遇到使用注释处理的库的问题,并在网上查看我读到需要android studio 2.2和com.android.tools.build:gradle:2.2.0-alpha6来编译生成的库来自注释的代码。

我下载Android Studio 2.2预览版6并将我的项目转换为它。之后我发现不再支持apt gradle插件,然后我需要将使用apt的每个依赖项更改为使用新的annotationProcessor选项。

例如:

apt "org.projectlombok:lombok:$rootProject.lombokVersion"

annotationProcessor "org.projectlombok:lombok:$rootProject.lombokVersion"

现在,如果我使用“make project”,项目编译没有问题,但是如果我尝试执行它,那么应该通过注释生成代码的错误。

当我打开项目时,我收到来自lombok插件的警告“注释处理似乎已禁用该项目”。当我打开项目设置并转到“Build - > Compiler”时,我找不到Annotation Processors。

所以,我的问题是:如何在Android Studio 2.2中启用注释处理器?此功能已被禁用?如果是,我如何从注释中生成代码?

- EDIT-- 我正在制作PullRequest来改变项目以使用Java8进行编译,你可以在这里检查PR:https://github.com/jonathanrz/myexpenses-android/pull/57

11 个答案:

答案 0 :(得分:96)

关闭项目。在"欢迎使用Android Studio"对话框单击"配置"在右下角。

然后,

  

设置>构建,执行,部署>编译器>注释处理器。勾选'启用注释处理'。

如果这不起作用。从"欢迎使用Android Studio"删除项目对话框并从新的开放。

为我工作。

答案 1 :(得分:42)

  1. 关闭所有AndroidStudio项目
  2. 请参阅enter image description here

  3. 点击配置 - >设置 看到 enter image description here

答案 2 :(得分:30)

您可以在 Android Studio 2.3 中启用注释处理器而不关闭您的项目:

File -> Other Settings -> Default Settings

enter image description here

Build, Execution, Deployment -> Compiler -> Annotation Processors -> 
Enable annotation processing.

enter image description here 在此之后不要忘记清理,构建,失效并重新启动 干杯!

答案 3 :(得分:23)

https://stackoverflow.com/a/38698186/4024146

之后:File > Invalidate Caches / Restart... > Invalidate and Restart

答案 4 :(得分:6)

在.idea文件夹中打开compiler.xml。我有以下内容:

<annotationProcessing>
  <profile default="true" name="Default" enabled="false">
    <processorPath useClasspath="true" />
  </profile>
</annotationProcessing>

我只是将enable更改为true并重新打开项目。

答案 5 :(得分:3)

  1. 关闭您的项目。
  2. 设置&gt;构建,执行,部署&gt;编译器&gt;注释处理器。选中&#39;启用注释处理&#39;。
  3. 打开您的项目。
  4. 文件&gt;无效缓存/重新启动...&gt;无效并重新启动
  5. 完全等待这个过程,然后一切都会好的。

答案 6 :(得分:1)

添加到@Jacques Koorts和@mtrakal

如果您无法进入&#34;欢迎使用Android Studio&#34;屏幕。请尝试File -> Close Project,而不是点击X图标。然后,您将获得#34;欢迎使用Android Studio&#34;屏幕,你会看到右下角的齿轮。之后请遵循接受的答案,可能还有缓存失效。

答案 7 :(得分:0)

Stuped但为我工作,尝试在我的情况下更改库版本我升级到1.4.1

答案 8 :(得分:0)

如果项目未集成到版本控制中,有时annotate选项将显示为灰色。所以转到VCS-&gt;启用版本控制集成然后你会看到annotate选项,并且可以在编辑器的行号旁边看到作者名称。

答案 9 :(得分:0)

此答案供以后遇到此问题的人

对于Kotlin

添加kapt插件

apply plugin: 'kotlin-kapt'
implementation 'com.google.dagger:dagger:2.21'
kapt 'com.google.dagger:dagger-compiler:2.21'

对于Java

implementation 'com.google.dagger:dagger:2.21'
annotationProcessor 'com.google.dagger:dagger-compiler:2.21'

答案 10 :(得分:0)

就我个人而言,我会强制将其添加到您的 build.gradle(Module:app) 文件中

android {
    ...
    defaultConfig {
        ...
        javaCompileOptions {
            annotationProcessorOptions {
                includeCompileClasspath false
            }
        }
    }
}