我正在尝试使用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;
}
}
并且父类在下面;
@SuperBuilder
public abstract class Operation<T> {
protected Instagram4j instagram4j;
public abstract T operate();
}
问题出在第public class FetchFollowersOperation extends Operation<List<InstagramUserSummary>>
行。您只能指定一种类型,即不是这里的内部通用类型,即用public class FetchFollowersOperation extends Operation<List>
替换。
这可以解决您的问题。尽管我仔细阅读了lombok文档以及导致此问题的原因的其他详细信息,但没有得到有关此问题的任何信息。
希望有帮助!