如何修复Uncommented主方法?

时间:2014-11-27 14:00:54

标签: java methods comments main sonarqube

我一直在通过谷歌寻找这个问题,但事实证明我找不到解决这个问题的方法。实际上我有一个经典的main方法,我在其中运行一个工作,但是sonarqube一直在重复我,发现了一个未注释的主方法。

以下是代码:

     /**
     * Main : Run MapReduce job
     * 
     * @param args
     *            arguments
     */
    public static void main(String[] args) {
        ExitManager exitManager = new ExitManager();
        // run job
        if (!runJob(args)) {
            exitManager.exit(1);
        }
    }

我在这里没有看到任何特殊问题,那么这个问题从何而来?你知道我怎么解决这个问题吗?

感谢。

3 个答案:

答案 0 :(得分:8)

取消注释的主方法是一个CheckStyle警告,表示main()方法未被注释掉。您不应该在代码中使用调试/测试main()方法。

您可以使用以下内容排除程序入口点类:

<module name="UncommentedMain">
    <property name="excludedClasses" value="\.Main$"/>
</module>

另见http://checkstyle.sourceforge.net/config_misc.html#UncommentedMain

答案 1 :(得分:3)

来自documentation

  

检查未注释的main()方法。

     

基本原理:main()方法通常用于调试目的。调试完成后,      开发人员经常忘记删除方法,这会改变API并增加其大小      生成的类或JAR文件。所有main()除了真正的程序入口点之外      方法应该从消息来源中删除或注释。

答案 2 :(得分:1)

您可以使用@SuppressWarnings禁止警告:

@SuppressWarnings("uncommentedmain")
public class YourClass {
    ...