Grails 2.1.0插件传递依赖

时间:2013-05-03 01:20:19

标签: grails dependencies grails-plugin

我编写了一个自定义插件,它依赖于Spring-Social Core和Spring-Security Core。我可以在打包的zip文件中的dependencies.groovy中看到下面的定义。

MYCustomPluginBuildConfig: 
 plugins { 
        build(":tomcat:$grailsVersion") 
        compile(":spring-security-core:1.2.7.3") 
        compile(":spring-social-core:0.1.31") { 
            transitive = false 
        } 
        //checkstyle for groovy 
        test(':codenarc:0.18') 
    } 

当我在项目的运行时范围内包含此插件并运行'grails compile'时,它无法找到Spring Social类。

.grails/projects/myproject/plugins/web-application-common-paypal-access-1.0.39/src/groovy/com/mycompany/SignInAdapter.groovy: 3: unable to resolve class grails.plugins.springsocial.signin.SpringSocialSimpleSignInAdapter 
 @ line 3, column 1. 
   import grails.plugins.springsocial.signin.SpringSocialSimpleSignInAdapter 

我无法弄清楚原因。任何帮助是极大的赞赏。

谢谢, 阿比吉斯

1 个答案:

答案 0 :(得分:0)

如果您的grails应用程序具有引用插件中的类的代码,或者插件由于传递依赖性而包含的类,那么您应该将该插件包含为compile时间依赖项而不是runtime依赖项

根据错误消息,SignInAdapter引用SpringSocialSimpleSignInAdapter。尝试更新BuildConfig.groovy,如下所示:

compile ':my-social-security-plugin:0.1'