keep
工具中的wsgen
标志到底做什么?我使用的是Oracle Java 7附带的默认命令行实现(位于:/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
。 最佳答案
wsgen
生成Web服务工件,对其进行编译,并仅保留.class
文件。通过使用-keep
选项,您可以告诉wsgen
也保留生成的.java
文件。-s
指示wsgen
保留.java
文件并将其放置在指定位置,在该位置,我认为-keep
选项被忽略,因为您使用了-s
选项(在两个示例中都这样做) 。
尝试仅使用-keep
播放简单命令,看看何时保留.java
文件,什么时候不保留。