在java9模块之前,有一个选项可以生成服务提供者实现类和META-INF / services文件 . 使用此选项,在注释处理期间生成的服务提供者类可在运行时通过ServiceLoader访问(如果还生成了适当的META-INF / services资源文件) .

在java9(启用模块)中引入了新的ServiceLoader机制 . 不再需要META-INF /服务,应在module-info.java中显式声明所有服务和服务提供者 . 这是否意味着java9(启用模块)限制生成服务提供程序类及其声明,或者我错过了什么?

谢谢 .