1. 程式人生 > >com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 3 位元組的 UTF-8 序列的位元組 x 無效

com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 3 位元組的 UTF-8 序列的位元組 x 無效

在啟動Tomcat專案時,控制檯報錯:nested exception is com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 3 位元組的 UTF-8 序列的位元組 2 無效。

該錯誤是由於一些配置檔案如:applicationContext.xml的編碼原因。

在配置檔案中引入了<?xml version="1.0" encoding="UTF-8"?>, 在配置檔案可能包含有中文註釋,導致在編譯後中文註釋在配置檔案亂碼拋異常。

有些解決方法提到將該檔案改為GBK編碼,但由於我們專案本身是UTF-8編碼的,所以這種方式是行不通的。

由於我的專案是Maven構建的,所以在專案依賴配置檔案pom.xml上加入構建專案編碼屬性:

<properties>
  <project.build.sourceEncoding>UTF8</project.build.sourceEncoding>
</properties>

 

 

參考:

https://blog.csdn.net/echo_oy/article/details/55118238