我的POM下面没有以UTF-8生成文件。
WSDL文件包含XSD文件,而这些文件又使用法语强调的字符,如é, è, à
等。我没有使用WSDL,因为我必须在交付时使用它们。
WSDL和XSD文件在没有BOM的情况下以UTF-8正确编码。
当我尝试生成java文件时,这些java文件是在DOS / Windows字符集中生成的,再次根据Notepad ++。
我希望java文件是以UTF-8生成的,因为我们所有的项目都使用UTF-8,并且由于以下错误,我们的开发人员无法在本地编译java类:{{1} }。
我阅读了关于此的documentation of CXF并完成了所描述的所有内容,包括直接在插件中添加JAXB的两个依赖项。但它没有用。
我使用的是CXF 2.6.10版(在2.6.1之后发布,其中包括以特定编码生成文件的选项)。
error: unmappable character for encoding UTF-8
答案 0 :(得分:0)
我阅读了上述链接中的文档。它说使用jaxb 2.2。我现在检查了Jira问题,并且读到我必须使用版本2.2.5而不是版本2.2。
所以我的POM有这个而不是问题中的内容:
<dependencies>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.2.5</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-xjc</artifactId>
<version>2.2.5</version>
</dependency>
</dependencies>
最后,我尝试使用最新版本的JAXB,2.2.11,但是这个引入了新的编译问题,所以我最终保留了2.2.5。