2013-05-31 75 views
2

当我建立的项目使用Maven和NetBeans我得到这个异常:“了java.lang.RuntimeException:com.sun.tools.javac.code.Symbol $ CompletionFailure:类文件org.jaxen.FunctionContext不发现”。注释处理器例外

this文章的人说,解决办法是在NB禁用注释处理,但我没有这个复选框到我的项目的生成设置。 enter image description here 也许有人知道如何解决这个问题,或者如何禁用注释处理

回答

8

至于禁用批注处理部分,它是由-proc:none选项javac的控制;因此你可以设置

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-compiler-plugin</artifactId> 
    <version>3.1</version> 
    <configuration> 
     <proc>none</proc> 
    </configuration> 
    </plugin> 
+0

谢谢你的信息。此方法有效。 –

+0

你能解释为什么会出现这个错误吗? – Chase

+0

org.jaxen.FunctionContext是Java编译器试图处理注释(http://hannesdorfmann.com/annotation-processing/annotationprocessing101可能阐明一些),除非指示跳过处理。实际上,这可能只是需要满足的依赖关系,请参阅https://stackoverflow.com/a/19141989/657619。 – patrungel

0

我又遇到了这个问题,发现了其他的解决办法。我只是删除我的项目的“目标”文件夹,如果禁用注释过程也许你的项目是不会对最终的部署目标上运行项目成功编译

0

我不得不使用POI和POI-OOXML的依赖时,同样的异常弹出。根本原因是我在其中一个类中有一个类型为XSSFCellStyle的私有成员。将类型更改为CellStyle使编译时异常消失。