带你读《2022技术人的百宝黑皮书》——MapStruct,降低无用代码的神器(10)

简介: 带你读《2022技术人的百宝黑皮书》——MapStruct,降低无用代码的神器(10)

带你读《2022技术人的百宝黑皮书》——MapStruct,降低无用代码的神器(9)https://developer.aliyun.com/article/1339755?groupCode=taobaotech


我们接下来以下命令来获取当前Maven项目中的classpath:

mvn dependency:build-classpath -Dmdep.outputFile=classPath.txt

 

 

从导出内容可以看出,classPath中的Jar包顺序就是与dependencies中导入的顺序是相同的。

 

自此,关于MapStruct导入顺序的所有问题均已经被解决,总结如下:

 

 

  1. 在POM中没有annotationProcessorPaths时,Maven使用的classPath作为注解处理器执行的顺序,而classPath的顺序正是dependencies中导入的顺序。
  2. 当MapStruct依赖在Lombok依赖前面时,在执行注解处理器期间, 由于Lombok还未生成get、set代码,因此在MapStruct看来,这些类并没有公开的成员变量,也就无从生成用于转换的方法。
  3. 在使用annotationProcessorPaths后,其强制规定了注解处理器的顺序,dependencies中的顺序就被忽略  了,Maven一定会先运行Lombok再运行MapStruct,代码即可正常运行。

 

团队介绍

 

大淘宝技术-用户平台技术团队

用户平台技术团队是一支集研发、数据、算法一体的团队,负责淘宝天猫的用户增长,游戏互动,平台会员和私域运营等消费者核心业务。在对用户争夺进入白热化的时期,团队正承担着捍卫电商主板块增长的重要使命,是阿里核心电商战场的参与者,用持续的技术创新来驱动阿里电商引擎的稳步前行。

这是一支年轻开放的团队,在这里你将收获超大规模高并发场景的架构设计能力,洞悉用户增长最前沿的实践方法,在数字化时代收获最核心的竞争力。团队技术氛围浓厚,倡导创新和工程师文化,鼓励用数据和代码发现解决问题。团队研发流程规范,代码质量高,学习成长速度快。

相关文章
|
9月前
带你读《2022技术人的百宝黑皮书》——性能优化之接口优化(4)
带你读《2022技术人的百宝黑皮书》——性能优化之接口优化(4)
|
9月前
|
安全
带你读《2022技术人的百宝黑皮书》——如何避免写重复代码:善用抽象和组合(4)
带你读《2022技术人的百宝黑皮书》——如何避免写重复代码:善用抽象和组合(4)
|
9月前
带你读《2022技术人的百宝黑皮书》——MapStruct,降低无用代码的神器(8)
带你读《2022技术人的百宝黑皮书》——MapStruct,降低无用代码的神器(8)
带你读《2022技术人的百宝黑皮书》——MapStruct,降低无用代码的神器(8)
|
9月前
带你读《2022技术人的百宝黑皮书》——性能优化之接口优化(5)
带你读《2022技术人的百宝黑皮书》——性能优化之接口优化(5)
|
9月前
带你读《2022技术人的百宝黑皮书》——性能优化之接口优化(6)
带你读《2022技术人的百宝黑皮书》——性能优化之接口优化(6)
|
9月前
|
SQL 缓存 JSON
带你读《2022技术人的百宝黑皮书》——性能优化之接口优化(1)
带你读《2022技术人的百宝黑皮书》——性能优化之接口优化(1)
119 1
|
9月前
|
网络协议
带你读《2022技术人的百宝黑皮书》——性能优化之接口优化(2)
带你读《2022技术人的百宝黑皮书》——性能优化之接口优化(2)
|
9月前
|
算法
带你读《2022技术人的百宝黑皮书》——性能优化之接口优化(3)
带你读《2022技术人的百宝黑皮书》——性能优化之接口优化(3)
|
9月前
|
安全
带你读《2022技术人的百宝黑皮书》——如何避免写重复代码:善用抽象和组合(2)
带你读《2022技术人的百宝黑皮书》——如何避免写重复代码:善用抽象和组合(2)
带你读《2022技术人的百宝黑皮书》——如何避免写重复代码:善用抽象和组合(2)
|
9月前
|
缓存 JSON 前端开发
带你读《2022技术人的百宝黑皮书》——MapStruct,降低无用代码的神器(6)
带你读《2022技术人的百宝黑皮书》——MapStruct,降低无用代码的神器(6)