Maven编译项目提示--编码GBK的不可映射字符

2017-01-13 15:00:26来源:csdn作者:loongshawn人点击

第七城市

转载请注明来源-作者@loongshawn:http://blog.csdn.net/loongshawn/article/details/52966190

1.问题描述

在maven打包项目后,命令行窗口提示如下错误,外加软件界面中文乱码:

当遇到这个异常提示时比较诧异,因为头两天打包时还没有出现这种情况,但是这次打包有修改pom文件的插件。

2.解决办法

在找解决办法前,先了解下产生这个问题的原因,一般中文系统默认字符集是GBK。我们安装的软件一般都继承使用操作系统的默认字符集。所以当命令行窗口中,在使用maven编译项目的时候,就会出现:

XXXX.java:[93,29] 编码GBK的不可映射字符

这个是由于代码使用的UTF-8,而maven编译的时候使用的GBK的缘故。 可以通过修改项目的pom文件,可以告诉maven这个项目使用UTF-8编码来编译。

提供2种修改方式:

①第一种是在项目的pom.xml文件中添加下面的配置:

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

②第二种在pom.xml的/project/build/plugins/下的编译插件声明 中加入下面的配置:

<encoding>UTF-8</encoding>

具体位置如下,供参考:

<!-- mvn assembly:assembly打包项目依赖的所有JAR的CLASS -->
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<encoding>UTF-8</encoding>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>com.loongshawn.axf.client.ui.MainPage</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>3.参考资料

本文问题解决方案利用网络资源整合而来。


第七城市

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台