Maven编译项目下的.java文件时的编码问题
2015-07-22 22:07
253 查看
由《编译.java文件时的编码问题》可知,在编译.java文件的时候,需要正确指定一个编码方案,该编码方案用于解码.java文件的字节流。
那么在使用Maven编译项目下所有的.java文件时,该如何指定正确的编码方案呢?
1)首先在Maven项目下执行"mvn help:effective-pom"命令。可以在得到的实际的POM文件中,发现默认情况下,用来编译Maven项目下的.java文件的工具是"maven-compiler-plugin"插件,其下有个"encoding"配置参数,该值就是用来指定编译.java文件过程中应该使用的编码方案的。该配置参数的值默认为"${project.build.sourceEncoding}",如果"${project.build.sourceEncoding}"没有配置,那么使用"platform
encoding"
2)假如现在有个项目,使用Maven进行管理,项目下.java文件使用的编码方案是GBK,未设置"${project.build.sourceEncoding}",且"platform encoding=utf8",那么默认情况下,"maven-compiler-plugin"插件下的"encoding"配置参数的值被取为utf8,使用该"encoding"参数值去编译项目会得到错误的.class文件,在这种情况下,我们应该明确指定"encoding=gbk"。
即便项目使用UTF-8编码,"encoding"参数值默认也被取为utf8,使用该"encoding"参数值去编译项目能够得到正确的.class文件,但是"encoding"参数是非常重要的一个参数,我们最好能够明确定义它
综上所述,我们应该明确定义"encoding"参数值,详细的定义方式见《Maven中配置maven-compiler-plugin插件》
参考文献:
[1]http://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html
那么在使用Maven编译项目下所有的.java文件时,该如何指定正确的编码方案呢?
1)首先在Maven项目下执行"mvn help:effective-pom"命令。可以在得到的实际的POM文件中,发现默认情况下,用来编译Maven项目下的.java文件的工具是"maven-compiler-plugin"插件,其下有个"encoding"配置参数,该值就是用来指定编译.java文件过程中应该使用的编码方案的。该配置参数的值默认为"${project.build.sourceEncoding}",如果"${project.build.sourceEncoding}"没有配置,那么使用"platform
encoding"
2)假如现在有个项目,使用Maven进行管理,项目下.java文件使用的编码方案是GBK,未设置"${project.build.sourceEncoding}",且"platform encoding=utf8",那么默认情况下,"maven-compiler-plugin"插件下的"encoding"配置参数的值被取为utf8,使用该"encoding"参数值去编译项目会得到错误的.class文件,在这种情况下,我们应该明确指定"encoding=gbk"。
即便项目使用UTF-8编码,"encoding"参数值默认也被取为utf8,使用该"encoding"参数值去编译项目能够得到正确的.class文件,但是"encoding"参数是非常重要的一个参数,我们最好能够明确定义它
综上所述,我们应该明确定义"encoding"参数值,详细的定义方式见《Maven中配置maven-compiler-plugin插件》
参考文献:
[1]http://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html
相关文章推荐
- java容易忽略的基础知识
- java获取视频缩略图
- SpringMVC
- 对Java事务的认识
- JAVA环境搭建之JDK配置
- 我是菜鸟:Java中接口/内部类中容易忽略的问题总结
- Java通过FTP服务器上传下载文件的解决方案
- 算法学习之java实现归并排序
- java的(PO,VO,TO,BO,DAO,POJO)解释
- Java集合框架(List, Set, Map, Collections)
- java 程序构成 及 开发工具 简介
- java的throw和throwszenmeyong
- java错误提示------ The public type must be defined in its own file
- java轉格式代碼
- Java常用日期操作详解
- 关于java基础--连接池与通用的操作数据库更新方法
- Intellij Idea编译项目下的.java文件时的编码问题
- 关于java基础--SQL驱动及JDBC连接
- 关于java基础--管道流和压缩
- 关于java基础--线程的详解与测试