gpt4 book ai didi

java - jaxb 使用 maven 以错误的编码生成文件

转载 作者:行者123 更新时间:2023-11-30 11:18:41 25 4
gpt4 key购买 nike

我有一个 xsd:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<!-- The xml file -->

我正在使用带有 maven 的 jaxb 从那个 xsd 生成类:

<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.8.0</version>
<configuration>
<schemaDirectory>src/main/resources/xsd</schemaDirectory>
<bindingDirectory>src/main/resources/xsd</bindingDirectory>
<generatePackage>be.fgov.minfin.bbf.business.fileprocessing.jaxb</generatePackage>
<encoding>UTF-8</encoding>
<strict>false</strict>
<extension>true</extension>
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics</artifactId>
<version>0.6.2</version>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics-annotate</artifactId>
<version>0.6.2</version>
</plugin>
</plugins>
<args>
<arg>-Xannotate</arg>
<arg>-XtoString</arg>
</args>
</configuration>
<executions>
<execution>
<id>generate</id>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>

文件生成正确,但生成的文件编码为Cp1252,为什么?当我尝试编译时,我得到了一个不可映射的字符,用于为其中的“é”字符编码 UTF-8 异常。

我正在设置:

${project.build.sourceEncoding}

我的主 pom.xml 中的变量为 UTF-8..

最佳答案

我们使用 codehaus jaxb2 插件,它有编码选项::

 <plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<id>xjc_qshgv</id>
<phase>generate-sources</phase>
<goals>
<goal>xjc</goal>
</goals>
<configuration>
...
<encoding>${file.encoding}</encoding>
...
</configuration>
</execution>
</executions>
</plugin>

关于java - jaxb 使用 maven 以错误的编码生成文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23682125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com