【发布时间】:2016-07-21 13:08:16
【问题描述】:
我正在维护一个使用 multiline annotation 存储某些常量的 Java 7 Web 项目。
当我使用 Mars 时,我可以很好地配置 Eclipse,所以我可以启动 Tomcat 并部署该应用程序,它就像一个魅力......
直到我升级! 尽管configuration,现在没有进行注释处理。
我发现这个问题是由于 Eclipse 4.6 的一个特性造成的,正如文档中的 here
批处理编译器和 IDE 支持 Java 6 注释处理器。按照设计,Java 6 处理器仅在构建期间执行,而不是在编辑时执行。 (错误 188558)
链接的bug 简而言之,注释处理已从 Eclipse 的增量编译中删除(可能是Build automatically???)出于正当原因。事实上,当我使用 Ant 在 CI 服务器中编译我的项目时,注释会照常处理。
但是我不能再在 Eclipse 中运行我的项目了。这完全取决于Multiline注解的正确处理。
到目前为止,我已经尝试禁用Build Automatically 标志并手动构建项目。 没有结果。
我也试过去Java Compiler -> Annotation processing -> Factory Path,选择multiline-string jar,去Advanced 属性并取消选中Run this container's processors in batch mode,尽管复选框是违反直觉的(我的意思是,它应该根据上面提到的错误,命名为“以增量模式运行”并且默认未选中)
该应用程序是一个 Web 应用程序,因此我每次尝试都尝试将其部署到本地 Tomcat。
你觉得我能做些什么?
【问题讨论】:
-
转向 Eclipse 论坛/社区?我认为这很特别,以至于在这里得到一个好的答案的机会不会太大。最好与拥有该产品的人交谈。
-
这个问题有解决办法吗?
-
您的问题找到解决方案了吗?
-
我通过加载类路径资源杀死了注释处理工具
标签: java eclipse annotations