您的位置:首页 > 编程语言 > Java开发

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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: