@Retention(value=CLASS) @Target(value=TYPE) public @interface ServiceProvider
S and a class P implementing the service, the processor
generates the file META-INF/providers/P whose contents are a single line containing the
fully qualified name of S.public abstract Class<?> value