静态文件编码的一个坑(freemarker)

    xiaoxiao2021-03-25  146

    今天遇到一个很奇怪的乱码问题,从早上忙到了现在,终于找到了原因,做下记录。 问题大概是这样的,我用ftl生成xml文件,在一些ftl中存在汉字,渲染后的xml中,静态的汉字,会有个别字乱码(不是全部,是不是好奇怪)。 进行排错,首先猜测,我的文件编码格式有问题,因为我用的windows系统,编码默认GBK,猜测有可能是使用了GBK编码,将源文件在vim下,:set fileecoding,结果为utf-8,这说明源文件确实utf8编码,里面的文字,在机器中二进制也是utf8对应的几个汉字,那为什么还会乱码?freemarker官网也查了,加了各种encoding不生效。 问题发现:在我指定ftl文件绝对路径,进行渲染的时候,是不乱码的,立即猜测编译后target目录下是乱码的,查看一下果不其然。 添加maven插件如下 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>3.0.2</version> <configuration> <encoding>UTF-8</encoding> </configuration> </plugin> mvn clean package 之后去target下查看,编码正常。

    转载请注明原文地址: https://ju.6miu.com/read-2466.html

    最新回复(0)