为什么编译器找不到"MappingProcessor"注释处理器?

use*_*270 5 java annotations

我在OSX 10.9.5上使用IntelliJ 13.0.2,使用java 1.8.尝试在IntelliJ中运行单元测试时出现此错误.当我在命令行通过maven运行编译或测试时,它运行正常.

我已进入文件 - >其他设置 - >默认设置 - >编译器 - >注释处理器并取消选中启用注释处理.我也尝试了选中启用注释处理,并保留选中的默认值.

我们正在运行我们的测试

@RunWith(MockitoJUnitRunner.class)
Run Code Online (Sandbox Code Playgroud)

它找不到的Annotation处理器是org.mapstruct.ap.MappingProcessor.我不知道从哪里得到它,它不在我们的进口中.也许是Mockito的依赖?

小智 5

这是因为领域而发生的.您可以使用这些依赖项

classpath"io.realm:realm-gradle-plugin:2.0.0-SNAPSHOT

classpath'com.android.tools.build:gradle:2.0.0-alpha3

classpath'com.neenbedankt.gradle.plugins:android-apt:1.8

2.0.0版本的快照.祝好运!


Joe*_*Kir 4

在我使用自己的注释处理器遇到的更一般的情况下,以下是必要的。

在设置页面中,选择“处理器路径”单选按钮。这必须是目标 jar,您应该尝试找到该 MappingProcessor jar。

我相信这是因为在终端上运行时,您会执行以下操作:
javac -cp <pathToAnnotationProcessor.jar> <path to source.java>