<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1-beta-1</version>
<configuration>
<warName>admingift</warName>
<webResources>
<resource>
<directory>${basedir}/src/main/webapp/WEB-INF</directory>
<includes>
<include>*.xml</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
<targetPath>WEB-INF</targetPath>
</resource>
<!-- 本地的jar拷貝到lib下 -->
<resource>
<directory>../lib</directory>
<includes>
<include>*.jar</include>
<include>**/*.jar</include>
</includes>
<targetPath>WEB-INF/lib</targetPath>
</resource>
</webResources>
<webappDirectory>target/admingift</webappDirectory>
</configuration>
</plugin>
上面是我maven的war插件的配置。
被wart filter之后就出現了亂媽,啟動報錯。MalformedByteSequenceException: Invalid byte 3 of 3-byte UTF-8 sequence.
大概注意的點是:
1、查看被fitler的文件是否帶utf-8的Bom頭,去掉bom頭,帶了有可能報錯
2、windows maven的war插件的版本,2.1-bata-1有問題,它的編碼識別有問題,懷疑是按照iso-5589-1解析,fitler后的文件16進制查看為3f,造成黑洞現象
3、網上很多解決方式是改成gbk,這個是一種解決方案,如果希望繼續使用utf-8編碼的,請修改war的filter,還有不要忘記resource插件的編碼設置。
