工程采用GBK编码,html
web应用中的配置文件打包后,war包里的配置文件里的中文成乱码。
用notepad++打开后,能够看到是用utf-8格式的(能够经过菜单中的【格式】查看),也就是说,在通过maven的war打包插件后,由gbk变成了utf-8。天然乱码了。
插件配置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
</plugin>
没有设置编码啊。
参看maven-war-plugin插件的文档,发现里面有编码相关的设置:
resourceEncoding:
The encoding to use when copying filtered web resources.
- Type:
java.lang.String
- Since:
2.3
- Required:
No
- User Property:
resourceEncoding
- Default:
${project.build.sourceEncoding}
不过这个必定要在2.3版本以上才有效。而咱们在项目中没有设置编码,为何会如此呢?
看了下pom,发现有以下配置:
<project.build.sourceEncoding>utf-8</project.build.sourceEncoding>
解决方式很明显了,把
<project.build.sourceEncoding>utf-8</project.build.sourceEncoding>中的utf-8改为gbk就行了。