Question: My problem references to this issue here on github <https://github.com/mapstruct/mapstruct/issues/1427>

I got at least two versions of mappers with the same name. I want to use springs getBean/Autowired possibilities but this doesn't work out of the mapstructs box yet. :-)

I followed the second workaround mentioned in the upper link: extend Springs bean naming strategy. Did someone ever get this well ment proposal working?

If i follow the code parts from there the bean naming doesn't take place. For me its's clear why not: there aren't any components to scan and especially to find.

If i add a componenModel = "spring" to the mapper annotation i get a ConflictingBeanDefinitionException. Don't know why. Maybe there's a cat in the tail problem?

Answer: 
As stated from Filip here <https://github.com/mapstruct/mapstruct/issues/1427> i followed his approach and with a few modifications it worked. I added a solution comment in the link.

The main changes are:

1. i added `componentModel = "spring"` to my mappers and used a filter to exclude all of my mapper classes (the interface all of my mappers are implementing: MapperInterface.class) within the Spring Boot application.
2. To my Spring Boot application class i added:

`@ComponentScan(basePackages = { "com.application.spring_boot_class" }, excludeFilters = { @ComponentScan.Filter(value = { MapperInterface.class }, type = FilterType.ASSIGNABLE_TYPE) })`
I had this issue before, and I resolved it using the `Spring bean` definition in a configuration class, a class annotated with `@Configuration`, with the `Mapstruct` mapper call like below:

```
@Bean
public IMyMapper offerWebMapper() {
    return Mappers.getMapper(IMyMapper.class);
}

```

And then you can inject the mapper using `@Autowired` or `getBean`.