如何使cxf-xjc-plugin在utf-8中生成源代码

我尝试使用cxf-xjc-plugin在maven项目中从xsd生成java类。

它运行正常,但生成的源文件获得特定于平台的编码(在Windows PC上为cp1251)而不是utf-8。 如果任何xsd类型在模式注释中包含非拉丁字符,那么它们仅在该特定编码中变得可读,并且编译器稍后会以[WARNING] /C:/.../SomeType.java:[17,4] unmappable character for encoding UTF-8抱怨[WARNING] /C:/.../SomeType.java:[17,4] unmappable character for encoding UTF-8

请帮助我强制utf-8生成源代码。

源编码设置为

 UTF-8 

构建插件的设置如下:

  ...  org.apache.cxf cxf-xjc-plugin 2.7.0   org.apache.cxf.xjcplugins:cxf-xjc-dv:2.7.0 net.java.dev.jaxb2-commons:jaxb-fluent-api:2.1.8     generate-sources generate-sources  xsdtojava   ${basedir}/target/generated-sources   true ${basedir}/src/main/resources/schemas/Policy.xsd ${basedir}/src/main/resources/schemas/Policy.xjb  -Xdv -Xfluent-api        ... 

在阅读了xjc的一些旧问题之后,特别是CXF-4369和JAXB-499我尝试使用maven项目属性utf-8强制编码并在运行mvn -Dfile.encoding=utf-8 clean install设置系统属性mvn -Dfile.encoding=utf-8 clean install ,但无处可去。

我可以通过在xsdOption元素中添加以下条目来使cxf-xjc-plugin生成UTF-8中的源:

  -encoding UTF-8