jax-ws:“wsgen”工具中的“keep”标志究竟是什么?

时间:2013-09-20 11:52:07

标签: java jax-ws wsgen

keep工具中的wsgen标记到底有什么作用?我正在使用Oracle Java 7附带的默认命令行实现(at:/usr/lib/jvm/java-7-oracle/bin/wsgen)。

文档说:“保留生成的文件”但是我已经尝试了两种方法:

wsgen -cp dist/foo.jar -r ../client/ -s ../client/src-auto/ -keep foo.Hello

wsgen -cp dist/foo.jar -r ../client/ -s ../client/src-auto/       foo.Hello

并且始终覆盖生成的文件(Java客户端存根文件和wsdl文件)。 wsgen Ant task显示了相同的行为 - keep属性似乎没有 产生任何效果,无论是true还是false

1 个答案:

答案 0 :(得分:1)

wsgen生成您的Web服务工件,编译它们并仅保留.class个文件。通过使用-keep选项,您告诉wsgen还保留生成的.java文件。

-s指示wsgen保留.java个文件并将它们放在指定的位置,此时我认为-keep选项被忽略,因为您使用了{{ 1}}选项(您在两个示例中都这样做了。)

尝试使用只有-s的简单命令进行播放,并查看它何时保留-keep个文件,何时保留.java