Java Maven使用并行lib版本

Java Maven使用并行lib版本,java,maven,Java,Maven,下面是我的POM的大致版本 one-java-artifact-version-X one-java-artifact-version-Y 我希望插件使用one-java-artifact-version-Y,但使用one-java-artifact-version-X。可以与Maven并排使用不同版本的java工件吗?特别是,如何应对上述情况 @编辑 在我使用Maven 3.0.4的例子中,one-java-artifact-version-Y总是被one-java-artifact-ve

下面是我的POM的大致版本


one-java-artifact-version-X
one-java-artifact-version-Y
我希望插件使用
one-java-artifact-version-Y
,但使用
one-java-artifact-version-X
。可以与Maven并排使用不同版本的java工件吗?特别是,如何应对上述情况

@编辑

在我使用Maven 3.0.4的例子中,
one-java-artifact-version-Y
总是被
one-java-artifact-version-X
遮蔽,因此插件无法执行,因为它对
one-java-artifact-version-X
的依赖性不好。然而,在
one-java-artifact-version-Y
被提升为下面的全局依赖项之后,插件可以正常工作,而其他事情则会一团糟


one-java-artifact-version-Y
one-java-artifact-version-X

不确定,如果在这种情况下可能(即与插件版本冲突),但对于常规依赖关系管理(即使用两个不同版本的两个依赖关系之间),表示

“最接近的定义”指使用的版本将是最接近的 在依赖项树中为您的项目添加一个,例如,如果依赖项 对于A、B和C,定义为A->B->C->D2.0和A->E->D 1.0,则在构建A时将使用D 1.0,因为从A到D到E的路径较短。您可以显式地向D添加依赖项 A中的2.0强制使用D 2.0


不确定,如果在这种情况下可能(即与插件版本冲突),但对于常规依赖关系管理(即使用两个不同版本的两个依赖关系之间),表示

“最接近的定义”指使用的版本将是最接近的 在依赖项树中为您的项目添加一个,例如,如果依赖项 对于A、B和C,定义为A->B->C->D2.0和A->E->D 1.0,则在构建A时将使用D 1.0,因为从A到D到E的路径较短。您可以显式地向D添加依赖项 A中的2.0强制使用D 2.0


你试过了吗?结果?错误消息?
version-Y
version-X
遮挡。您正在使用哪个版本的Maven?您尝试过吗?结果?错误消息?
version-Y
version-X
隐藏。您使用的是哪个版本的Maven?因此Maven通过使用除一个版本之外的所有版本来解决冲突,对吗?它不能解决我面前的问题。是的,maven resolution归结为1个版本,具有最接近的定义。对于您的特定情况,可能有一些黑客攻击,但不确定。因此Maven通过使用除一个版本之外的所有版本来解决冲突,对吗?它不能解决我面前的问题。是的,maven resolution归结为1个版本,具有最接近的定义。对于您的特殊情况,可能有一些黑客攻击,但不确定。