bug:IntrospectionException-Method not found異常與lombok


異常信息

java.beans.IntrospectionException: Method not found: setName
	at java.beans.PropertyDescriptor.<init>(PropertyDescriptor.java:111)
	at java.beans.PropertyDescriptor.<init>(PropertyDescriptor.java:71)

場景

  • 使用 new PropertyDescriptor(propertyName, clazz); 反射獲取屬性描述對象
  • 實體類使用了 lombok
    <dependency>
    	<groupId>org.projectlombok</groupId>
    	<artifactId>lombok</artifactId>
    	<version>1.16.18</version>
    </dependency>
    

原因

  • 原因在於實體類使用了 @Accessors(chain = true) 注解
  • 該注解使得對象的 setter 方法返回對象本身,以便鏈式使用
  • new PropertyDescriptor(propertyName, clazz); 要求 setter 返回值為 void
  • 解決:去掉 @Accessors(chain = true) 注解即可


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM