Ble*_*ach 6 java builder lombok
我正在尝试使用 Lombok 的 @SuperBuilder,但由于某种原因我在编译时遇到了问题Error:(14, 1) java: wrong number of type arguments; required 3
那是我的子类;
@SuperBuilder
public class FetchFollowersOperation extends Operation<List<InstagramUserSummary>> {
private String userName;
public List<InstagramUserSummary> operate() {
InstagramSearchUsernameResult userResult = null;
try {
userResult = instagram4j.sendRequest(new InstagramSearchUsernameRequest(this.userName));
InstagramGetUserFollowersResult followers = instagram4j.sendRequest(new InstagramGetUserFollowersRequest(userResult.getUser().getPk()));
return followers.getUsers();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
父类在下面;
@SuperBuilder
public abstract class Operation<T> {
protected Instagram4j instagram4j;
public abstract T operate();
}
Run Code Online (Sandbox Code Playgroud)
问题出在线上public class FetchFollowersOperation extends Operation<List<InstagramUserSummary>>。您必须仅指定一种类型,即 T ,而不是此处的内部泛型类型,即用public class FetchFollowersOperation extends Operation<List>.
这解决了你的问题。虽然我浏览了 lombok 文档和其他有关导致此问题的原因的详细信息,但没有获得任何相关信息。
希望能帮助到你!