maven中文亂碼問題——打包錯誤


工程采用GBK編碼,

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.
  • Typejava.lang.String
  • Since2.3
  • RequiredNo
  • User PropertyresourceEncoding
  • Default${project.build.sourceEncoding}
不過這個一定要在2.3版本以上才有效。而我們在項目中沒有設置編碼,為什么會如此呢?
看了下pom,發現有如下配置:
<project.build.sourceEncoding>utf-8</project.build.sourceEncoding>
 
而上面的文檔中, resourceEncoding 默認取值正好是這個屬性:  ${project.build.sourceEncoding}
 
解決方式很明顯了,把<project.build.sourceEncoding>utf-8</project.build.sourceEncoding>中的utf-8改成gbk就好了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM