在调试一个不相关的问题时,我注意到我们的一个新项目在类路径上有两次不同版本的javax.faces.component.UIComponent
。它们是从这两个依赖项加载的,它们是Tomee lib目录中的provided
:
<!-- Parent POM-->
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>8.0</version>
<scope>provided</scope>
</dependency>
<!-- Web POM-->
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-api</artifactId>
<version>2.3.3</version>
<scope>provided</scope>
</dependency>
虽然目前这并没有引起任何问题,但我喜欢在视线中杀死Classpath冲突,我知道他们会在某些时候回来咬我。
这门课应该从哪里来?
提前谢谢了。