【发布时间】:2015-10-22 13:17:24
【问题描述】:
在 Scala 和 SBT 中,有没有办法通过注释类自动生成 META-INF/services/* 资源文件供 java.util.ServiceLoader 使用,就像 Google Auto Service 对 Java 项目所做的那样?
即
package foo.bar
import my.exported.ServiceInterface
@AutoService[ServiceInterface]
class MyService extends ServiceInterface{
// …
}
在资源文件夹中自动生成文件META-INF/services/my.exported.ServiceInterface。该文件将包含:
foo.bar.MyService
(我认为我不能直接使用 Google Auto Service,因为它不适用于 Scala 类——请参阅this comment on a realm-java github issue。)
【问题讨论】:
标签: scala sbt annotation-processing serviceloader