我正在尝试利用JAVA类中的@Builder流畅API。但是我遇到了一个无法破解的场景:
这是 HALResource.groovy :
import groovy.transform.builder.Builder
import groovy.transform.builder.SimpleStrategy
import org.springframework.hateoas.ResourceSupport
@Builder(builderStrategy = SimpleStrategy, prefix = '')
class HALResource extends ResourceSupport {
String name
}
这是 Java.java
中的执行逻辑public class Java {
public static void main(String[] args) {
System.out.println(new HALResource().name("Bug"));
}
}
当我尝试编译时:
System.out.println(new HALResource().name("Bug"));
^
symbol: method name(String)
location: class HALResource
1 error
但是我评论了println语句,然后编译项目一切正常,编译 HALResource.class 生成了流畅的API:
public HALResource name(String name) {
CallSite[] var2 = $getCallSiteArray();
this.name = name;
return this;
}
我正在使用gradle wrapper 2.13 + JDK9U60 这是一个错误/配置问题还是我错过了文档中的内容?