wsimport具有-B选项,该选项可用于将选项传递给JAXB编译器。但是,我不清楚如何指定包含空格的选项。 我的意思是,我想将“ -encoding UTF-8”传递给JAXB编译器,因为wsimport会为我生成cp1252源文件,而不是UTF-8源文件。但是这样的话:
wsimport -extension -keep -s sourceFolder -verbose -Xnocompile -target 2.2 myWsdl.wsdl -b myBinding.xml -b anotherBinding.xml -wsdllocation http://example.com/my.wsdl -B-encoding UTF-8
我无法获得所需的行为:wsimport不会抱怨,但是我生成的文件在cp1252中。
在How to change the encoding of wsimport-generated files?
我读到我可能使用JAVA_TOOL_OPTIONS
环境变量,但是我的wsimport调用发生在Gradle构建脚本中,该脚本应该是自动一致的,并且不依赖于外部配置/环境。
的确,似乎将-encoding UTF-8
直接传递给wsimport(而不是告诉wsimport将其传递给JAXB)确实达到了目的。 wsimport命令用法输出的意大利语翻译很烂,使我受骗。但是,对于为什么我的原始方法不起作用的好奇心仍然存在。