zhegexiaohuozi / SeimiCrawler

一个简单、敏捷、分布式的支持SpringBoot的Java爬虫框架;An agile, distributed crawler framework.
http://seimicrawler.org
Apache License 2.0
1.98k stars 679 forks source link

Response.ren de r #38

Closed billho closed 5 years ago

billho commented 5 years ago

java.lang.IllegalAccessException: Class cn.wanghaomiao.seimi.core.SeimiBeanResolver can not access a member of class app.model.Activity with modifiers "" at java.lang.reflect.AccessibleObject.slowCheckMemberAccess(AccessibleObject.java:296) at java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:288) at java.lang.reflect.Field.set(Field.java:761) at cn.wanghaomiao.seimi.core.SeimiBeanResolver.parse(SeimiBeanResolver.java:56) at cn.wanghaomiao.seimi.struct.Response.render(Response.java:156) at app.crawlers.Basic.start(Basic.java:61)

billho commented 5 years ago

cn.wanghaomiao.seimi.core.SeimiBeanResolver.java line 56: 多线程这么玩必然会报错阿. .... boolean accessFlag = f.isAccessible(); f.setAccessible(true); f.set(bean, defaultCastToTargetValue(target, f, res)); f.setAccessible(accessFlag); ....

zhegexiaohuozi commented 5 years ago

ReflectionUtils.doWithFields的实现用了缓存,这里确实疏忽了,下个版本会修复。