usr*_*ΛΩΝ 13 java eclipse annotations
我正在维护一个Java 7 Web项目,该项目使用多行注释来存储某些常量.
我可以在使用Mars时配置Eclipse,所以我可以在部署该应用程序的情况下启动Tomcat,它就像魅力一样......
直到我升级!现在,尽管配置完成,仍未完成注释处理.
我发现这个问题是由Eclipse 4.6的一个特性引起的,如此处所述
批处理编译器和IDE中支持Java 6批注处理器.按照设计,Java 6处理器仅在构建期间执行,而不是在编辑时执行.(bug 188558)
简而言之,链接的错误说明注释处理已经从Eclipse的增量编译中删除(可能是Build automatically???),这是出于合法的原因.事实上,当我使用Ant在CI服务器中编译项目时,注释会照常处理.
但我不能再在Eclipse中运行我的项目了.它完全取决于Multiline注释的正确处理.
到目前为止,我已尝试禁用该Build Automatically标志并手动构建项目.没有结果.
我也尝试去Java Compiler -> Annotation processing -> Factory Path,选择multiline-stringjar,转到Advanced属性并取消选中Run this container's processors in batch mode,尽管复选框是违反直觉的(我的意思是,它应该被命名为"以增量模式运行"并且默认情况下未选中,根据上面提到的错误)
该应用程序是一个Web应用程序,因此每次尝试将其部署到本地Tomcat.
你觉得我能做些什么?
一些建议:
MultilineProcessor指定@SupportedSourceVersion(SourceVersion.RELEASE_6),推荐的 pom 设置指定source和target值1.6。)如果您的包是使用大于 1.6 的JDK 合规级别构建的,这可能就是注释被忽略的原因。