Неверное количество аргументов с Ломбоком - PullRequest
3 голосов
/ 31 октября 2019

Я пытаюсь использовать @SuperBuilder из Lombok, но по какой-то причине у меня возникает проблема во время компиляции 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();
}

1 Ответ

2 голосов
/ 31 октября 2019

Проблема в строке public class FetchFollowersOperation extends Operation<List<InstagramUserSummary>>. Вы должны указать только один тип, т. Е. T, а не его общий универсальный тип, т.е. заменить его на public class FetchFollowersOperation extends Operation<List>.

Это решит вашу проблему. Хотя я просмотрел документацию lombok и другие сведения о причинах этой проблемы, но не получил никакой информации об этом.

Надеюсь, это поможет!

...