警告:不应该直接调用main方法



我目前在一个Java项目中工作,该项目有许多main方法。现在,我做了一些重构,这影响了所有main方法。然而,一些main方法实际上是直接从其他方法调用的。我认为这是一种糟糕的风格,它实际上使重构更加困难。因此,我希望能够识别调用main方法的所有位置。目前,我使用我的IDE工具来查找对给定main方法的所有引用,但是这很繁琐,而且很容易忘记为main方法之一检查这一点。

我的问题是,是否有一些检查样式规则或Eclipse编译器警告设置,每当直接调用main方法时都会产生警告。

如果您担心人们可能以各种方式格式化了"main"方法,并且在使用"模式匹配"时可能会错过其中的一些方法…

"javap -public MyClass.class"可以为您工作吗?

    public class Main1 {
         public
    static
                    void
    main
    (
                    String
    []
    args
                    )
    {
            System.out.println("Main1: Hello World");
         }
    }

输出如下:

    Compiled from "Main1.java"
    public class Main1 {
      public Main1();
      public static void main(java.lang.String[]);
    }

不可否认,它不会'检测'这个'main'是否正在调用另一个'main',它将有助于找到所有的'main'。

来源自Post: Java Program to disassemble Java Byte Code

正如@ jeeutnarg在评论中建议的:

[…你可以使用Eclipse的Java搜索。搜索'main',只搜索'Method',限制'References',并在'Sources'中搜索您的项目范围。

这就是我最后所做的,它实际上比我预期的要好得多。

相关内容

  • 没有找到相关文章

最新更新