添加新依赖项时 Bean 名称不明确
Bean name is ambiguous when adding a new dependency
我在我的 pom 文件中添加了这个 picketlink 依赖项:
<dependency>
<groupId>org.picketlink</groupId>
<artifactId>picketlink</artifactId>
<version>2.7.1.Final</version>
</dependency>
我收到这个错误:
WELD-001414: Bean name is ambiguous. Name dsWindowContext resolves to beans
我要添加的依赖项是一个 UberJar,其中包含 Deltaspike JAR,这会导致冲突,因为显然 Deltaspike 已经导入到我的项目中,但我在 pom.xml 中找不到.
我正在使用 Wildfly 10、JEE 7、Picketlink 2.7,如何删除 Deltaspike 以及在哪里可以找到它?
添加一个uber jar作为依赖总是有问题的,但我总是避不开。
要在您的项目中找到 Deltaspike,您可以使用 dependency:tree
。它显示了包含 Deltaspike 的所有位置。
在运行时摆脱它的最简单方法是在 dependencyManagement 部分将其声明为 provided
。
更正确的做法是找到依赖关系树中包含工件的所有位置,并将其从所有位置中排除。这也消除了编译时的工件。
我在我的 pom 文件中添加了这个 picketlink 依赖项:
<dependency>
<groupId>org.picketlink</groupId>
<artifactId>picketlink</artifactId>
<version>2.7.1.Final</version>
</dependency>
我收到这个错误:
WELD-001414: Bean name is ambiguous. Name dsWindowContext resolves to beans
我要添加的依赖项是一个 UberJar,其中包含 Deltaspike JAR,这会导致冲突,因为显然 Deltaspike 已经导入到我的项目中,但我在 pom.xml 中找不到.
我正在使用 Wildfly 10、JEE 7、Picketlink 2.7,如何删除 Deltaspike 以及在哪里可以找到它?
添加一个uber jar作为依赖总是有问题的,但我总是避不开。
要在您的项目中找到 Deltaspike,您可以使用 dependency:tree
。它显示了包含 Deltaspike 的所有位置。
在运行时摆脱它的最简单方法是在 dependencyManagement 部分将其声明为 provided
。
更正确的做法是找到依赖关系树中包含工件的所有位置,并将其从所有位置中排除。这也消除了编译时的工件。