Grails 3.0.2 无法解析控制器中的@Secured 注释
Posted
技术标签:
【中文标题】Grails 3.0.2 无法解析控制器中的@Secured 注释【英文标题】:Grails 3.0.2 cannot resolve @Secured annotation in controller 【发布时间】:2015-09-04 05:38:47 【问题描述】:我尝试将我的应用程序从 Grails 2.4.4 升级到 Grails 3.0.2,但我遇到了 spring 注释问题。
我有控制器,像这样:
import grails.plugins.springsecurity.annotation.Secured
class MyController
@Secured(['ROLE_ADMINS_GROUP'])
def index()
// some code
在depencencies
阻止build.gradle
我有这个:
dependencies
provided 'org.springframework.boot:spring-boot-starter-logging'
provided "org.springframework.boot:spring-boot-starter-actuator"
provided "org.springframework.boot:spring-boot-autoconfigure"
provided "org.springframework.boot:spring-boot-starter-tomcat"
compile "org.springframework.boot:spring-boot-starter-security"
provided "org.grails:grails-web-boot"
provided "org.grails:grails-dependencies"
provided 'javax.servlet:javax.servlet-api:3.1.0'
testCompile "org.grails:grails-plugin-testing"
console "org.grails:grails-console"
compile "org.grails.plugins:wslite:0.7.2.0"
当我尝试编译我的应用程序时,我收到错误消息。
MyController.groovy: 4: unable to resolve class grails.plugins.springsecurity.annotation.Secured
@ line 4, column 1.
import grails.plugins.springsecurity.annotation.Secured
^
【问题讨论】:
请看这个问题:(***.com/questions/29286659/…)。发生该错误是因为您正在使用来自未包含在依赖项中的插件的导入,并且您不能这样做,因为正如上面的答案所解释的,Spring Security 插件与 Grails 3.0 不兼容。我目前不知道如何在这个问题上为您提供帮助,但我认为该问题中的博客文章可以帮助您。 【参考方案1】:Spring Security Core Plugin 已经更新,现在与 Grails 3.0 兼容,请参阅文档:What's New in Version 3.0
只需在build.gradle
文件的dependencies
块中添加以下依赖项:
compile "org.grails.plugins:spring-security-core:3.0.0.M1"
【讨论】:
以上是关于Grails 3.0.2 无法解析控制器中的@Secured 注释的主要内容,如果未能解决你的问题,请参考以下文章
使用gradle bootRun启动时,redirect()无法在Grails中解析@info.app.name @
无法在 grails 2.3.7 中解析:spring-securty-core:2.0-RC2
图像字节 [] 到 Grails 中的 response.outputStream 导致“响应提交后无法转发”