博主: haitianisgood
原博客网址:
http://blog.youkuaiyun.com/haitianisgood/article/details/73839032
eclipse、Maven中文乱码
无论在开发、maven打包还是在程序在运行后都有可能出现中文乱码问题
防止中文乱码在进行开发和部署程序之前在以下几点设置编码为UTF-8:
eclipse、maven、java加载(tomcat)
eclipse
1.修改Eclipse中文本文件的默认编码:windows -> Preference -> general -> Workspace -> Text file encoding设置为UTF-8
注意:
这个对“工作空间”下所有项目有效,一般国内开发的包含中文的程序都是设置为UTF-8
2.修改JAVA源文件的默认编码:windows->Preferences->general->Content Types->右侧Context Types树,点开Text,选择Java Source File,在下面的Default encoding输入框中输入UTF-8,点Update
maven
java程序中通过maven打包时候,就需要加入maven插件,也必须设置编码。
根据自己maven版本添加相关配置
主要是在pom.xml中设置:
下面是maven3
1.
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
</properties>
2.
<build>
<finalName>xxxx</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
3.此选项可选,编译后依旧出现中文乱码问题,可以考虑增加此选项。
<build>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-pluginn</artifactId>
<version>3.3</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</build>
下面是maven2
pom.xml文件:
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
</properties>
<build>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.4</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.6</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</build>
tomcat
在java程序正式部署运行后,仍可能出现中文乱码
需要在java加载程序运行前候加入参数:
在启动脚本catalina.sh中加入-Dfile.encoding=UTF-8,例如:
vim bin/catalina.sh
JAVA_OPTS="-server -Xms128m -Xmx2048m -Dfile.encoding=utf-8 "
此参数在脚本最前面,如果JAVA_OPTS不存在,就手动创建。