我试图弄清楚如何解决grails项目中插件和依赖项之间的版本冲突。
这就是我在做什么。
我正在使用aws sdk plugin。该插件的最新版本使用httpcore和httpclient 4.2版本。它在许多地方使用,所以我不想改变它。
plugins {
compile ":aws-sdk:1.7.5"
...
}
现在我正在尝试整合sendgrid api。此API依赖于httpcore和httpclient 4.3.x
dependencies {
compile 'com.sendgrid:sendgrid-java:2.0.0'
...
}
当我尝试通过sendgrid发送电子邮件时,它会给出NoClassDefFoundError。我知道这是因为使用了旧版本(4.2)。我知道这是因为我在示例应用程序中尝试了sendgrid API,并且使用相同的配置工作正常。
我希望这两个库都使用4.3.x httpcore和httpclient而不是两个版本。
任何帮助或建议将不胜感激。
答案 0 :(得分:1)
您可以从httpcore
插件中排除httpclient
和aws-sdk:1.7.5
compile ":aws-sdk:1.7.5" , {
exclude 'httpcore'
exclude 'httpclient'
}