Gradle找不到插件

时间:2016-01-20 08:22:09

标签: grails gradle spring-security build.gradle grails-plugin

我的Grails 3项目的build.gradle中有以下内容。

dependencies {
...
    compile "org.grails.plugins:spring-security-core:3.0.3"
    // The following line was the true cause of my problem
    compile("org.grails.plugins:spring-security-oauth-google:0.3.1")
...
}

现在,当我运行Gradle时,我收到此错误:

Error Error initializing classpath: Could not find spring-security-core.zip (org.grails.plugins:spring-security-core:3.0.3).
Searched in the following locations:
https://repo.grails.org/grails/core/org/grails/plugins/spring-security-core/3.0.3/spring-security-core-3.0.3.zip (Use --stacktrace to see the full trace)

如果我转到指定的path,我会看到该插件,但正如报告的那样,没有zip文件。
我在这里做错了什么?

1 个答案:

答案 0 :(得分:2)

这个问题的根源我在一个与预期不同的地方找到了。
我正在努力将Grails 2.5项目升级到Grails 3,并且我已经走错了轨道。我需要包含spring-security-oauth-google,当它没有按预期工作时,我还包括spring-security-core然后让我脱轨。 这个问题的原因是从我在我自己的项目中的依赖项加载依赖项。为了避免加载这些依赖项 - 称为传递依赖项 - 必须完成以下操作:

plugins {
    compile "org.grails.plugins:spring-security-core:3.0.3"
    compile("org.grails.plugins:spring-security-oauth-google:0.3.1") {
        exclude group: 'org.grails.plugins', module: 'spring-security-core'
    }
}

这将加载spring-security-core 3.0.3正确忽略spring-security-oauth-google的依赖关系。