IntelliJ IDEA使用maven-javadoc-plugin生成Java Doc控制檯亂碼

問題描述

在使用IDEA生成Java Doc的過程當中,發現IDEA控制檯亂碼,做爲有輕微代碼強迫症的我來講,這是不可忍受的,須要鼓搗一番。先上pom.xml中的javadoc插件配置java

<!--配置生成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插件的過程當中,控制檯輸出亂碼apache

[INFO] — maven-javadoc-plugin:2.10.3:jar (attach-javadocs) @ lucene —
[INFO]
���ڼ���Դ�ļ�D:\Multi-module-project\Lucene\src\main\java\AnalyzerDemo.java…
���ڼ���Դ�ļ�D:\Multi-module-project\Lucene\src\main\java\BaiduAPI.java…
���ڼ���Դ�ļ�D:\Multi-module-project\Lucene\src\main\java\CustomQueryParser.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

Maven home:…
Java version:…
Java home:…
Default locale: zh_CN, platform encoding: GBK
…
…

再次運行mvn clean package,控制檯輸出一切正常ui

[INFO] — maven-javadoc-plugin:2.10.3:jar (attach-javadocs) @ lucene —
[INFO]
正在加載源文件D:\Multi-module-project\Lucene\src\main\java\AnalyzerDemo.java…
正在加載源文件D:\Multi-module-project\Lucene\src\main\java\BaiduAPI.java…
正在加載源文件D:\Multi-module-project\Lucene\src\main\java\CustomQueryParser.java…
…
…
相關文章
相關標籤/搜索