本人博客全部迁至个人博客,柒情博客:http://www.ityw.club ,后续所有博客将在柒情博客上进行更新。
一、问题描述
今天在Eclipse用jdk1.8和maven编译项目,出现了两个错误,在这里记一下
1.编码gbkd的不可映射字符
编译之前代码明明没有任何错误,执行"maven install"命令编译项目后会出现如图错误。
2.JDWP exit error JVMTI_ERROR_WRONG_PHASE(112): on getting class status [util.
解决了第一个问题后我继续编辑,结果显示success,但是后面却跟着一行错误FATAL ERROR in native method: JDWP on getting class status, jvmtiError=JVMTI_ERROR_WRONG_PHASE(112)
二、解决办法
1.安装系统之后,一般中文系统默认字符集是GBK。我们安装的软件一般都继承使用操作系统的默认字符集。所以当在中文XP或者win7系统开发,在使用maven(mvn compile)编译项目的时候,就会出现“编码 gbk 的不可映射字符”: 这个是由于代码使用的UTF-8,而maven编译的时候使用的GBK的缘故。 可以通过修改项目的pom文件,可以告诉maven这个项目使用UTF-8编码来编译。在项目的pom.xml文件中添加下面的配置:
<!-- 指明编译源代码时使用的字符编码,maven编译的时候默认使用的GBK编码, 通过project.build.sourceEncoding属性设置字符编码,告诉maven这个项目使用UTF-8来编译 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
2.重启eclipse解决