Intellij не распознает установщики lombok для Java Spring-Boot - PullRequest
1 голос
/ 07 февраля 2020

Я использую IntelliJ в Ubuntu (среда выполнения 11.0.5) и в настоящее время я создаю приложение Spring-Boot. Я использую плагин lombok, чтобы автоматически генерировать getters и setters для моей сущности. Вот как мой код выглядит сейчас:


@Getter
@Setter
@RequiredArgsConstructor
@Document
public class Experts {

    @Id
    private final String id;


    private final String name;
    private final String desc;

    @Enumerated(EnumType.STRING)
    private final Availability availability;

    @Enumerated(EnumType.STRING)
    private final Language language;

}

Несмотря на то, что когда я пытаюсь использовать сеттеры из другого класса, spring-boot не распознает их:


@Service
@RequiredArgsConstructor
public class ExpertsServiceImpl implements ExpertsService{

    private final ExpertRepository repository;

    @Override
    public Experts updateExpert(Experts expert, String id) {
        Experts updated = findExpertById(id);
        if(updated == null) {
            throw new ExpertNotFoundException(id);
        }

        updated.setId(expert.getId()); // here is shows: Cannot resolve method 'setId' in 'Experts'
        repository.save(updated);
        return updated;
    }

На этой заметке Я должен упомянуть, что то же самое не происходит для добытчиков. Подключаемый модуль Lombok активирован, и на IntelliJ активирована обработка аннотаций:

enter image description here

Кто-нибудь понимает, почему это происходит и как я мог это исправить? Я ценю любую помощь, которую вы можете оказать

1 Ответ

3 голосов
/ 07 февраля 2020

Ваш идентификатор final lombok будет генерировать сеттеры только для полей, которые можно установить.

...