У меня тест JUnit для конечной точки Spring, и иногда я нахожу странную проблему. Когда я использую Eclipse, мой тест не хочет проходить. Сбой со следующим сообщением:
caused by: com.fasterxml.jackson.databind.JsonMappingException: Can not construct instance of com.package.dto.MyDto: no suitable constructor found, can not deserialize from Object value (missing default constructor or creator, or perhaps need to add/enable type information?)
А пока все понятно. Это правда, что у меня нет конструктора по умолчанию, потому что я использую Lombok, и мой класс проблематики c выглядит следующим образом:
@Getter
@Builder
@EqualsAndHashCode
@AllArgsConstructor
public class MyDto {...}
Но когда я использую IntelliJ для сборки проекта, все работает отлично. Даже в Eclipse все тесты проходят, когда проект перестраивается с IntelliJ. Также, когда я использую консольную команду Maven: mvn clean install
все работает без проблем. Похоже, что Eclipse собрал весь проект немного по-другому. После тестирования сборки Eclipse происходит сбой в IntelliJ и при использовании консольной команды mvn test
. Вопрос в том, почему это происходит? Я знаю, как это исправить (добавив конструктор по умолчанию), но я просто хочу узнать разницу между Eclipse и другими инструментами сборки.
Есть идеи?