错误:在maven编译期间编码UTF8的不可映射字符

我使用maven编译包,它说编译失败与以下编译错误:

SpanishTest.java [31,81]用于编码UTF8的不可映射字符

我在网上搜索很多人,将源编码从UTF-8更改为ISO-8859-1似乎工作,但我仍然得到相同的编译错误。我使用32位Ubuntu。这里是标签在我的pom.xml中的样子

<project.build.sourceEncoding>ISO-8859-1</project.build.sourceEncoding>

即使我改变< project.build.outputEncoding>标签为ISO-8859-1,我仍然得到错误。它是否会因为java版本?我有两个太阳java和openjdk安装在我的系统上。

任何人都可以让我知道该怎么办。

谢谢

配置maven-compiler-plugin以使用与源文件编码相同的字符编码(例如:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>2.3.2</version>
    <configuration>
        <source>1.6</source>
        <target>1.6</target>
        <encoding>UTF-8</encoding>
    </configuration>
</plugin>

许多maven插件将默认情况下使用“project.build.sourceEncoding”属性,所以在pom中设置这将覆盖大多数插件。

<project>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
...

但是,我喜欢在每个插件的配置中设置编码,支持它,因为我喜欢显式。

当源代码由maven-compiler-plugin编译时,编译器插件使用编译器插件配置的任何编码读取源代码文件。如果源文件的编码与编译器插件使用的编码不同,那么这两种编码中可能不存在某些字符。

许多人喜欢将其源文件上的编码设置为UTF-8,以避免此问题。要在Eclipse中执行此操作,您可以右键单击项目,然后选择Properties-> Resource->文本文件编码并将其更改为UTF-8。这将编码所有的源文件在UTF-8。 (你还应该明确配置上面提到的maven-compiler-plugin来使用UTF-8编码。)对于使用相同编码的源文件和编译器插件,在编译期间不应该有更多不可映射的字符。

注意,您还可以通过Window-> Preferences-> General-> Workspace->文本文件编码在eclipse中全局设置文件编码。您还可以通过Window->首选项 – >常规 – >内容类型设置每种文件类型的编码。

http://stackoverflow.com/questions/8978013/error-unmappable-character-for-encoding-utf8-during-maven-compilation

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:错误:在maven编译期间编码UTF8的不可映射字符