在我的新鲜grails项目中,我安装了shiro
(grails install-plugin shiro
)
和快速设置grails shiro-quick-start
。这会生成新文件,如shiro documentatio n。
但是,在其中一个文件controllers/(default package)AuthController.groovy
中,eclipse(SpringSource Tools Suite)标记了8个问题。其中五个问题分别涉及五种进口:
Groovy:unable to resolve class org.apache.shiro.authc.AuthenticationException
…
指定正确的包并将文件移动到该包无法解决问题。其他三个问题标记是:
Groovy:Catch statement parameter type is not a subclass of Throwable.
(×3) 我想这个问题可能与失败的导入有关,因此一旦解决了上一个问题就可能会消失。
现在,我可以set up shiro myself没有快速启动,但是我希望坚持快速启动并扩展它,如指南中所述。
(显而易见)问题1 :有没有人知道为什么Eclipse会给我这些错误消息?我是否错过了安装过程中的一个步骤?
(不是那么重要)问题2 :我尝试将fix应用于(默认包)问题,但却发现已经存在对包路径的引用_ShiroInternal.groovy的相关部分。为什么它仍然安装到默认目录?这可能与我的问题有关吗?
其他奇怪之处:还有另一个文件realm/ShiroDbRealm.groovy
,其中包含org.apache.shiro
个资源的导入。没有包声明,Eclipse中没有错误标记。一旦我添加了项目的正确包声明并将文件移动到该包,就无法再解析导入了。这可能是这里发生的事情的线索。
答案 0 :(得分:2)
您必须将shiro库jar添加到eclipse项目构建路径中。 默认情况下,librarys(在我的情况下)安装在我的主文件夹中的grails项目插件目录中。
答案 1 :(得分:2)
也许是一个更简单的解决方案,当我遇到它时解决了这个问题:
无论您是否已通过其他方式安装,请运行:
grails install-plugin shiro
虽然这可能会告诉您该插件已经安装,但这也将为您解决路径,这应该可以解决问题。
答案 2 :(得分:0)
我发现确保您已完成以下工作
将compile ":shiro:1.2.1"
插入BuildConfig.groovy
运行命令grails compile
右键单击项目> grails工具>刷新依赖关系