public interface Logger { void log(String message); } import com.google.auto.service.AutoService; @AutoService(Logger.class) public class FileLogger implements Logger { public void log(String message) { System.out.println("Writing log to file: " + message); } } import com.google.auto.service.AutoService; @AutoService(Logger.class) public class ConsoleLogger implements Logger { public void log(String message) { System.out.println("Logging to console: " + message); } } groovy dependencies { implementation 'com.google.auto.service:auto-service:1.0-rc7' } annotationProcessor 'com.google.auto.service:auto-service:1.0-rc7' <dependencies> <dependency> <groupId>com.google.auto.service</groupId> <artifactId>auto-service</artifactId> <version>1.0-rc7</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <annotationProcessorPaths> <path> <groupId>com.google.auto.service</groupId> <artifactId>auto-service</artifactId> <version>1.0-rc7</version> </path> </annotationProcessorPaths> </configuration> </plugin> </plugins> </build> import java.util.ServiceLoader; public class Main { public static void main(String[] args) { ServiceLoader<Logger> serviceLoader = ServiceLoader.load(Logger.class); for (Logger logger : serviceLoader) { logger.log("Hello, AutoService!"); } } } Writing log to file: Hello, AutoService! Logging to console: Hello, AutoService!


上一篇:
下一篇:
切换中文