依赖项 - gradle - 流口水(版本 4.0.7)

dependencies - gradle - drools (Version 4.0.7)

我有以下依赖项:

dependencies {
  compile (
                [group: 'org.drools', name: 'drools-core', version: '4.0.7'],   
                [group: 'org.drools', name: 'drools-compiler', version: '4.0.7'],
                [group: 'org.drools', name: 'drools-jsr94', version: '4.0.7']
        )   

}

我得到以下异常:

Could not resolve org.mvel:mvel:1.3.1-java1.4.
Required by:
  project : > org.drools:drools-core:4.0.7
  > Could not resolve org.mvel:mvel:1.3.1-java1.4.
  > inconsistent module metadata found. Descriptor: 
      org.codehaus.mvel:mvel:1.3.1-java1.4 Errors: bad group: 
      expected='org.mvel' found='org.codehaus.mvel'

如果我将我的依赖项更新为 drools 5.0.1 那么它就可以工作了。但是我需要 drools 4.0.7.

我能做什么? (从drools的传递依赖中排除org.mvel并不能解决问题.....)

根本问题是 Maven Central 上的工件不好:请参阅 here leading to this pom

看起来也无法在 gradle 中跳过此验证 - 请参阅 this question

既然你说你的 运行 你自己的存储库我会说你最好的选择是将一个固定的工件(固定的 pom)上传到你自己的存储库中,这样它就会被拉出来而不是来自 maven 的工件中央 - 最坏的情况排除 org.mvel:mvel:1.3.1-java1.4 并明确依赖于你将在你自己的仓库中放置在 org.mvel.relocated:mvel:1.3.1-java1.4 之类的工件上(你需要修改后的 pom 来匹配)