2013-07-18 40 views
2

Heyho,在子项目中使用重定位的依赖关系

我目前正在开发bukkit插件,我想使用番石榴。 Bukkit仍然使用Guava 11.0,但我想使用14.0。所以我尝试在我的主要模块中重新定位番石榴。这工作完美。同一级别的其他模块也使用番石榴,它需要“相同”的番石榴。所以在主要项目中也使用番石榴。当然进口改变了,主项目和其他模块不兼容。

项目结构:

父:

  • 主要模块:采用番石榴的重定位版本(14.0)#
  • 一个其它模块:使用番石榴14.0但不会被重新定位 - >不兼容主模块

我已经尝试将番石榴迁移到其他模块中的相同路径,但没有任何反应。

也许任何人都有一个想法如何解决这个问题。我只是需要一种方法来使用我的搬迁番石榴我在其他模块:/

相关岗位:Maven shade relocations accross all modules?

回答

0

你试过从该Bukkit依赖排除V14?请原谅下面的命名约定。我没有查找Maven中的依赖关系。

<dependencies> 
<dependency> 
    <groupId>Bukkit</groupId> 
    <artifactId>Something</artifactId> 
    <version>1.0</version> 
    <exclusions> 
    <exclusion> <!-- declare the exclusion here --> 
     <groupId>Guava</groupId> 
     <artifactId>v14</artifactId> 
    </exclusion> 
    </exclusions> 
</dependency> 
</dependencies>