在Jenkins中获取Spring错误“名为'x'的Bean必须为[y]类型,但实际上为[$ Proxy]类型”

在Jenkins中获取Spring错误“名为'x'的Bean必须为[y]类型,但实际上为[$ Proxy]类型”,第1张

在Jenkins中获取Spring错误“名为'x'的Bean必须为[y]类型,但实际上为[$ Proxy]类型”

摘自上面的问题评论:

您是否在Jenkins上运行Cobertura,Sonar或其他代码工具?请注意,

mvnsite
也可能配置为在generate中包含Cobertura报告
site

Cobertura的问题在于它执行相当繁重的字节码检测,包括添加一些自定义接口。当Spring启动时,它将为bean生成代理。如果bean具有至少一个接口,则它将使用标准Java代理。否则,它将尝试创建基于类的代理。

我猜在您的情况下,使用了CGLIB类代理,但是在Cobertura工具春季之后又回到了Java代理。这导致启动错误,因为依赖项注入期望类(或CGLIB子类)。

简而言之,强制使用CGLIB类代理,您会没事的:

<aop:config proxy-target-/>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5140377.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存