Inspectopedia
 
2024.3

Confusing 'main()' method

Warning
New
Last modified: 03 December 2024

Reports methods that are named "main", but do not have the public static void main(String[]) signature in Java up to 21. Starting from Java 21 Preview, inspection doesn't highlight in case of package-private, protected or instance main methods, also without parameters. Additionally main methods located in anonymous or local classes are reported. Anonymous and local classes do not have a fully qualified name and thus can't be run.

Such methods may be confusing, as methods named "main" are expected to be application entry points.

Example:

A quick-fix that renames such methods is available only in the editor.