private static boolean hasMainMethodSignature(@NotNull JvmMethod method) {
    if (method.isConstructor()) return false;
    if (!method.hasModifier(JvmModifier.PUBLIC)) return false;
    if (!method.hasModifier(JvmModifier.STATIC)) return false;

    final JvmType returnType = requireNonNull(method.getReturnType(), () -> "Non-constructors should have return type: " + method);
    if (!isVoid(returnType)) return false;

    final JvmParameter[] parameters = method.getParameters();
    if (parameters.length != 1) return false;

    return isStringArray(parameters[0].getType());
  }
private static boolean hasMainMethodSignature(@NotNull JvmMethod method)