如何在Play!的lib文件夹中排除阴影罐的部分内容

时间:2014-06-20 14:28:02

标签: java scala playframework

我需要在Play中使用第三方阴影罐! (2.2.3)app通过非托管依赖机制将其放在lib文件夹中。但是,此jar包含一个不兼容的旧版jackson(2.0.4),当Play执行JSON转换时会导致NoSuchMethodError

我怎么强迫玩!使用自己的(2.3.2)版本的杰克逊而不是这个罐子里的那个?

1 个答案:

答案 0 :(得分:0)

您可能需要查看播放框架文档here

的“冲突解决方案”部分
  

但有一个例外。当Play框架本身的核心依赖性涉及冲突时,首选$ PLAY / framework / lib中可用的版本

     

有时您希望强制使用特定的依赖项版本,以覆盖核心依赖项或选择最新版本可用的其他版本。

因此,要解决您的问题,您可以在dependencies.yml文件中的任何依赖项上指定force选项:

# Application dependencies

require:
    - play 1.2
    - com.google.guava -> guava r07:
        transitive: false
    - commons-lang 3.0:
        force: true