如何在JDK 7或6中使用javac替换弃用的wsgen或apt?

Bah*_*aha 5 apt jax-ws wsgen java-6 java-7

当我使用wsgen或apt在JDK 7中使用命令生成Web服务工件时.

wsgen -s src -cp CLASS_PATH -d OUTPUT_DIRECTORY  com.sun.WebServiceSEI
Run Code Online (Sandbox Code Playgroud)

显示以下警告消息

自JDK 7以来,com.sun.mirror包中包含的apt工具及其关联的API已被弃用,并计划在下一个主要JDK版本中删除.使用javac工具中提供的选项以及包javax.annotation.processing和javax.lang.model中包含的API来处理注释.

如何在不使用wsgen或apt删除此警告的情况下生成Web服务工件?

dma*_*a_k 1

生成警告是因为WsgenTool类正在使用com.sun.mirror.apt包中的类,而这些类在 JDK7 中似乎已被弃用。我认为 JAX-WS 团队稍后将发布不使用此 API 的 jaxws-ri,但它可能会在更接近 JDK8 版本的地方发生。

  • @dma_k wsgen(和 apt、wsimport)从 1.5 开始就是 JDK 的一部分。JAX-WS 项目有一个版本当前在 JDK 6 中不可用。 (2认同)