问题描述
在使用IDEA生成Java Doc的过程中,发现IDEA控制台乱码,作为有轻微代码强迫症的我来说,这是不可忍受的,需要鼓捣一番。先上pom.xml中的javadoc插件配置
<!--配置生成Javadoc包--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.10.3</version> <configuration> <encoding>UTF-8</encoding> <aggregate>true</aggregate> <charset>UTF-8</charset> <docencoding>UTF-8</docencoding> </configuration> <executions> <execution> <id>attach-javadocs</id> <phase>package</phase> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin>
在运行mvn clean package命令进行打包之后,控制台会打印出如下信息,可以看到在使用javadoc插件的过程中,控制台输出乱码
[INFO] — maven-javadoc-plugin:2.10.3:jar (attach-javadocs) @ lucene — [INFO] ���ڼ���Դ�ļ�D:Multi-module-projectLucenesrcmainjavaAnalyzerDemo.java… ���ڼ���Դ�ļ�D:Multi-module-projectLucenesrcmainjavaBaiduAPI.java… ���ڼ���Դ�ļ�D:Multi-module-projectLucenesrcmainjavaCustomQueryParser.java… … …
解决办法
在IDEA中,打开File | Settings | Build, Execution, Deployment | Build Tools | Maven | Runner在VM Options中添加-Dfile.encoding=GBK,切记一定是GBK。即使用UTF-8的话,依然是乱码,这是因为Maven的默认平台编码是GBK,如果你在命令行中输入mvn -version的话,会得到如下信息,根据Default locale可以看出
Maven home:… Java version:… Java home:… Default locale: zh_CN, platform encoding: GBK … …
再次运行mvn clean package,控制台输出一切正常
[INFO] — maven-javadoc-plugin:2.10.3:jar (attach-javadocs) @ lucene — [INFO] 正在加载源文件D:Multi-module-projectLucenesrcmainjavaAnalyzerDemo.java… 正在加载源文件D:Multi-module-projectLucenesrcmainjavaBaiduAPI.java… 正在加载源文件D:Multi-module-projectLucenesrcmainjavaCustomQueryParser.java… … …