• IntelliJ IDEA使用maven-javadoc-plugin生成Java Doc控制台乱码


    问题描述

    在使用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…
    …
    …
  • 相关阅读:
    Codeforces Round #605 (Div. 3)E
    Codeforces Round #628 (Div. 2)
    Codeforces Round #627 (Div. 3)
    AC自动机,知识点+hdu模板题
    Tire树,hdu2846,hdu4825
    Educational Codeforces Round 83 (Rated for Div. 2)
    分层最短路
    初入mysql的学习
    赛后总结
    Codeforces Round #625 (Div. 2, based on Technocup 2020 Final Round) D
  • 原文地址:https://www.cnblogs.com/winner-0715/p/10083678.html
Copyright © 2020-2023  润新知