【问题标题】:Error with spring security plugin in grails 2.4.0.M1grails 2.4.0.M1 中的 spring 安全插件出错
【发布时间】:2014-04-10 02:44:03
【问题描述】:

我遇到了编译问题,使用 grails 2.4.0.M1 和 spring-security-core:2.0-RC2

这是错误:

..../target/work/plugins/spring-security-core-2.0-RC2/src/groovy/grails/plugin/springsecurity/ReflectionUtils.groovy: 205:在静态范围内发现了明显的变量“org”,但没有 引用局部变量、静态字段或类。可能的原因: 您试图在绑定或实例中引用变量 静态上下文中的变量。你拼错了一个类名或 静态导入的字段。请检查拼写。你尝试过 使用方法 'org' 但在不允许的地方省略括号 语法。 @ 第 205 行,第 18 列。 应用程序 = org.codehaus.groovy.grails.commons.ApplicationHolder.application ^

问题似乎出在这个方法上

private static GrailsApplication getApplication() { 
                if (!application) { 
                        application = org.codehaus.groovy.grails.commons.ApplicationHolder.application 
                } 
                application 
        } 

关于 ReflectionUtils.groovy 类,

有没有其他人遇到过这样的事情?如果有,你是怎么解决的?

【问题讨论】:

    标签: grails spring-security


    【解决方案1】:

    我今天解决了这个问题 - https://github.com/grails-plugins/grails-spring-security-core/commit/ef3aab05bfb0eb2f2cbb2c5945f4fc9ca2f0697d

    您可以将@Bubuntux 显示的更改作为临时解决方法,我将在几周后发布 2.0 final 并修复此问题。希望您不打算在生产中使用 Grails M1 版本,因此延迟应该不是太大的问题。

    【讨论】:

    • 谢谢你!我实际上在 git repo 上查找了该文件,希望能够提交一个包含更改的拉取请求,不幸的是它已经存在 :( 无论如何期待发布 2.0
    • 顺便说一句,我也遇到了静态规则 (NPE) 的问题
    • jira.grails.org/browse/GPSPRINGSECURITYCORE 上创建一个问题,使用一个演示问题的小型测试应用程序 - 运行grails bug-report 并附加该压缩包
    • 使用 spring-security-core-2.0-RC3 摆脱了错误。谢谢。
    【解决方案2】:

    似乎 ApplicationHolder 类很久以前就被弃用了,现在在 grals 2.4 上被删除了

    所以我只是换行

    application = org.codehaus.groovy.grails.commons.ApplicationHolder.application 
    

    application = Holders.grailsApplication
    

    【讨论】:

    • 哈哈。弃用的实际含义。不像Java中的Date.parse。 ;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-15
    • 2014-06-30
    • 2015-05-30
    • 2015-05-31
    • 2015-09-01
    • 1970-01-01
    • 2014-10-31
    相关资源
    最近更新 更多