private static NoSuchMethodException buildNoConstructorException(String className, Object... args) {
    String argTypes =
        Stream.of(args).map(arg -> arg == null ? "null" : arg.getClass().getName()).collect(Collectors.joining(", "));
    return new NoSuchMethodException(
        "No constructor found for " + className + " that takes arguments of types: " + argTypes);
  }
Create a {@link NoSuchMethodException} for situations where a constructor for a class that conforms to the provided
argument types was not found.
@param className the class for which a suitable constructor was not found.
@param args the constructor arguments.
@return the {@link NoSuchMethodException} to throw.
ambry-utils/src/main/java/com/github/ambry/utils/Utils.java