jsdevel
@jsdevel
Java разработчик. Хороший парень, наверное.

Почему mapstruct не всегда @Autowired field?

@Mapper(componentModel = "spring", uses = Converters.class, injectionStrategy = InjectionStrategy.FIELD)
public interface ObjectInfoMapper { 
}

@Mapper(componentModel = "spring", uses = Converters.class, injectionStrategy = InjectionStrategy.FIELD)
public interface ObjectMapper {
}


После генерации такие файлы

@Generated(
    value = "org.mapstruct.ap.MappingProcessor",
    date = "2018-10-30T12:17:47+0300",
    comments = "version: 1.3.0.Beta1, compiler: javac, environment: Java 1.8.0_181 (Oracle Corporation)"
)
@Component
public class ObjectInfoMapperImpl implements ObjectInfoMapper {

    @Autowired
    private Converters converters; // есть поле
}

/*
Второй 
*/
@Generated(
    value = "org.mapstruct.ap.MappingProcessor",
    date = "2018-10-30T12:35:34+0300",
    comments = "version: 1.3.0.Beta1, compiler: javac, environment: Java 1.8.0_181 (Oracle Corporation)"
)
@Component
public class CvInfoMapperImpl implements ObjectMapper {
// Нет поля @Autowired
}


Почему такое может происходить?
  • Вопрос задан
  • 557 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы