首先,根据documentation,JAX-WS参考实现应该与Java 5一起使用。
然而,使用最新版本(2.2.7)的二进制包使用Java 6(类版本50.0)进行编译,因此将其与Java 5一起使用将导致抛出UnsupportedClassVersionError。我已经下载了Java源代码并尝试使用Java 5编译它们,但由于依赖库是为Java 6编译的,因此它也无法直接工作。我已经尝试使用“-target 1.5”编译Java 6的新版本,以至少在编译的文件中获得正确的类版本,但我不确定是否遇到其他问题,如果实际在某些时候执行期望Java 6或更新。
有没有人知道最新的JAX-WS RI版本,这个版本在没有类似解决方法的情况下可以与Java 5一起使用?
编辑:
为了回答我的问题的至少一部分,JAX-WS RI实现利用Java 6 SE API中的新功能,并且不会在Java 5上运行,即使这些类是针对目标1.5编译的。至少类org.jvnet.ws.message.BasePropertySet使用类java.util.AbstractMap $ SimpleImmutableEntry,它仅在Java 1.6之后可用。
答案 0 :(得分:5)
根据我的经验,JAX-WS RI版本2.2.5是使用Java 5的最后一个。