0

我正在尝试将 jboss 作为 7 应用程序迁移到 WildFly。出于某种原因,我得到了 Set 类型的焊接不满足依赖项。

对于几乎所有使用@Inject(使用 guice)的类。我想不出任何办法来解决这个问题,现在已经卡了几个小时了。

Exception 0:
org.jboss.weld.exceptions.DeploymentException: WELD-001408: Unsatisfied dependencies for type 'classNameHere' with qualifires @Default 
at injection point [BackedAnnotatedField] @Inject cant.tell.du.services.data.syly.nbp.syll.gkfsn
at cant.tell.du.services.data.syly.nbp.syll.gkfsn(syll.java:0)

at org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProbloms(Validator.java:368)
at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:289)
at org.jboss.weld.bootstrap.Validator.validateGeneralBean(Validator.java:135)
at org.jboss.weld.bootstrap.Validator.validateRIBean(Validator.java:166)
at org.jboss.weld.bootstrap.Validator.validateBean(Validator.java:514)
4

1 回答 1

2

好的,现在我明白了您使用的是 guice 而不是 cdi。您可以尝试从部署中排除焊接子系统,如下所示:

<exclude-subsystems>
    <subsystem name="weld" />
</exclude-subsystems>

这应该会为您的部署禁用 CDI,并且您不应再遇到相同的问题。

于 2014-05-16T06:07:55.683 回答