关于 maven 项目打包 乱码问题
#才疏学浅, 不当之处, 还望见谅
今天, 在下遇到了一个很奇怪的问题, 服务器的编码是UTF_8, 查询代码
$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
确定是UTF-8 , 我的项目也是UTF-8的项目, 编译器上所有的地方都是UTF-8,
但是jar包运行起来之后, 里面的有一个判断语句是永远不会执行的,
因为里面有中文, 在编译的时候已经是乱码了, 这让在下很苦恼啊,
这是一个重要的判断, 此判断不过, 则项目没法活,
所以经过多方面的排查, 确定问题出现在pom文件中,
因为 maven 打包时候 系统默认编码为 GBK , 所以需要在pom文件中将编码改编为UTF-8
具体代码配置如下
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<encoding>UTF-8</encoding>
<archive>
<manifest>
<mainClass>com.makenv.Main</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>
能解决这个问题, 多亏了
http://chinazzlm.blog.163.com/blog/static/161843537201312634953574/
在此立贴感谢…
还没有评论,来说两句吧...