我在我的Vista 32机器上使用Grails 2.3.3和IntelliJ Ultimate 12.1.6。
我使用grails命令行创建了一个新的应用程序,然后添加了springsecurity和springsecurityui
compile ":spring-security-core:2.0-RC2"
compile ":spring-security-ui:1.0-RC1"
我跑了
grails s2-quickstart
grails s2ui-override auth
grails s2ui-override register
我生成的RegisterController看起来像这样:
class RegisterController extends grails.plugin.springsecurity.ui.RegisterController {
}
plugin是红色的并且无法解析,无论我怎么尝试,我都无法让IntelliJ解析grails.plugin
Grails编译和运行应用程序没有问题,如果我覆盖我在spring ui RegisterController的源代码中找到的方法,它们会正确地连接到应用程序中,但我甚至不能从intell编译,也不能让intellij帮助我覆盖代码。
我想也许在IntelliJ之外创建项目是一个问题,所以我使用IntelliJ接口创建了一个新的Grails项目,插件仍然没有解决。
我尝试添加插件作为运行时没有成功。
我花了一下午和一晚上的时间研究这个问题,但没有成功。IntelliJ的主要版本10和11有类似的问题,但没有最新的,所以我决定寻求帮助,让IntelliJ识别Grails插件类。如果有必要,我可以发布一个完整的小样本项目。
谢谢戴夫
2条答案
按热度按时间7hiiyaii1#
当我在BuildConfig.groovy中放置一个新的插件时,我经常遇到这个问题,但是当我添加一个jar依赖项时,这个问题就不常见了。
我通过在菜单中执行以下操作来解决此问题:工具〉Grails〉同步Grails设置
您可以通过在Project视图中导航到grails-app〉target〉work〉plugins来判断插件是否在IDEA中同步。每个同步的插件在目录图标的右下角都有一个小的蓝色方块。如果它没有这个图标,它就没有正确地与IDEA同步。
wlsrxk512#
在Maven中使用IntelliJ 13.1.5和Grails 2.4.3时,IDE会拉入2个不同的groovy-all jar文件。解决方法是转到“模块设置”,在项目和projectGrialsPlugins模块下修改User Grails库条目。单击编辑按钮(铅笔),从项目中删除groovy-all.2.3.3.jar文件。
请记住,如果关闭项目并重新打开它,则可能需要重新应用这些设置。