Grails 对json-lib-2.4-jdk15.jar的隐式依赖会导致构建失败,即使它';他被排除在build.gradle之外

Grails 对json-lib-2.4-jdk15.jar的隐式依赖会导致构建失败,即使它';他被排除在build.gradle之外,grails,gradle,grails-3.0,Grails,Gradle,Grails 3.0,我正在将包含Grails2.4.2应用程序的现有基于Maven的项目转换为Gradle2.6和Grails3.0.4。它是一个混合环境,Java、Groovy和Grails在几个子项目中使用。我已经将所有pom.xml文件转换为build.gradle文件,从./gradlew init开始,然后根据需要手动编辑。在将Grails项目的Grails app/conf/BuildConfig.groovy转换为build.gradle等效版本之前,gradle 2.6构建的一切都很好。在我将Gra

我正在将包含Grails2.4.2应用程序的现有基于Maven的项目转换为Gradle2.6和Grails3.0.4。它是一个混合环境,Java、Groovy和Grails在几个子项目中使用。我已经将所有pom.xml文件转换为build.gradle文件,从./gradlew init开始,然后根据需要手动编辑。在将Grails项目的Grails app/conf/BuildConfig.groovy转换为build.gradle等效版本之前,gradle 2.6构建的一切都很好。在我将Grails项目的BuildConfig.groovy文件转换为build.gradle后,我在尝试运行/gradlew build时遇到以下错误:

FAILURE: Build failed with an exception.

* What went wrong:
Could not resolve all dependencies for configuration ':foo:runtime'.
> Could not find json-lib-jdk15.jar (net.sf.json-lib:json-lib:2.4).
Searched in the following locations:
  file:/Users/xyz/.m2/repository/net/sf/json-lib/json-lib/2.4/json-lib-2.4-jdk15.jar

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED
json-lib-2.4.jar文件确实存在于上面显示的本地M2缓存中,但其中没有-jdk15部分。Grails项目的build.gradle文件中没有对任何json lib jar文件的显式依赖关系。一个并行项目确实对这个库有明确的依赖关系,但是这个项目构建得很好。我尝试在Grails项目中显式地将依赖项添加到build.gradle文件中,无论是否使用“分类器:'jdk15'”,都添加到依赖项声明中。当我运行./gradlew dependencies时,我注意到json lib jar文件的较旧版本(2.3)在列表中显示为某些ApacheHttpComponent内容的隐含依赖项。然后,我在顶级build.gradle的allProjects部分尝试了这两个版本:

configurations {
    all*.exclude module: 'json-lib'
}
以及:

configurations {
    all*.exclude module: 'json-lib', classifier: 'jdk15'
}

两种变体都没有区别。我真的被困在这个问题上了,如果有任何关于如何前进的建议,我将不胜感激。如果有区别的话,我会在MacOS 10.10.5的Mac上运行它,JDK版本是1.8.0_25-b17。谢谢

请编辑此答案,以提供一些额外的上下文,或解释此答案解决问题的原因。@wuke,您的示例正好包含我试图包含在测试依赖项中的
json lib:2.4
。谢谢D
dependencies {
    //compile group: 'net.sf.json-lib', name: 'json-lib', version: '2.4'
    compile "net.sf.json-lib:json-lib:2.4:jdk15"
}