Java 8 的特性之一是能够向接口添加静态方法。我正在研究基于注释处理器的 java 库,名为Kripton Persistence Library。
我正在使用谷歌编译测试库。当我尝试测试以下接口的编译时:
public interface AppDataSource {
static void execute(DaoPerson daoPerson) {
daoPerson.insert(new Person());
}
}
使用如下代码:
ImmutableList<JavaFileObject> generated = com.google.testing.compile.Compiler.javac()
.compile(sourcesPhase1).generatedSourceFiles();
我收到以下错误:
sqlite/feature/transition/AppDataSource.java:29: error: modifier static not allowed here
static void execute(DaoPerson daoPerson) {
完整代码可在:
我错了什么?