2014-11-21 147 views
0

我有一个取决于另一个maven项目的maven项目。项目树如下:不同版本的依赖关系

final_project 
    | 
    |----sub_project 
    |  |----jsf 1.2_09 
    |----jsf 2.0.3 

它是如何知道什么确切​​-library将在哪些项目中使用?我的意思是这样的项目会产生冲突吗?

UPD:

<dependency> 
    <groupId>javax.faces</groupId> 
    <artifactId>jsf-impl</artifactId> 
    <version>1.2_09</version> 
    <type>jar</type> 
    <scope>compile</scope> 
</dependency> 

<dependency> 
     <groupId>com.sun.faces</groupId> 
     <artifactId>jsf-impl</artifactId> 
     <version>2.0.3</version> 
    </dependency> 

这些依赖关系是不可重写:由于不同的组ID。

+0

您已经遇到了一个经典问题,通常通过更加模块化的方法来加载库,例如OSGi或JBoss模块。你的具体问题唯一的缺点是它可能很难在相同的应用程序中运行两个JSF版本,从未尝试过。 – nablex 2014-11-21 12:08:49

+0

“排除”不是一种选择? http://stackoverflow.com/questions/27057481/exclude-a-maven-dependecie-from-a-derived-pom?rq=1 ... – OhadR 2014-11-21 15:13:56

回答

相关问题