在IntelliJ中安装带有插件依赖项的Grails1.1应用程序

在IntelliJ中安装带有插件依赖项的Grails1.1应用程序,grails,intellij-idea,Grails,Intellij Idea,我在Windows上使用Intellij8.1.2开发一个Grails1.1项目,该项目依赖于内部开发的插件,而这些插件在中央Grails插件repo中不可用。在Grails1.1中,已安装插件的默认位置从$PROJECT\u ROOT/plugins移动到$HOME/.Grails/1.1/$PROJECT/plugins 使用命令行,我已将插件安装到默认位置。我的IntelliJ项目包含主Grails应用程序作为一个模块,为了让IntelliJ能够找到主应用程序所依赖的插件,我添加了$HOM

我在Windows上使用Intellij8.1.2开发一个Grails1.1项目,该项目依赖于内部开发的插件,而这些插件在中央Grails插件repo中不可用。在Grails1.1中,已安装插件的默认位置从
$PROJECT\u ROOT/plugins
移动到
$HOME/.Grails/1.1/$PROJECT/plugins

使用命令行,我已将插件安装到默认位置。我的IntelliJ项目包含主Grails应用程序作为一个模块,为了让IntelliJ能够找到主应用程序所依赖的插件,我添加了
$HOME/.Grails/1.1/$project/plugins
作为内容根,并指定了此位置中的源文件夹


项目会生成,我可以用IDE运行测试,但我的问题是插件项目不是作为项目中的模块设置的——记住,插件的安装位置是作为内容根设置的。因此,就目前情况而言,如果我需要更改插件,我必须在IDE之外进行更改,并通过命令行重新安装插件。理想情况下,我希望主Grails应用程序和插件作为IntelliJ项目中的模块进行设置,但主Grails应用程序从其安装位置引用插件。这将使我能够更改IDE中的插件或主应用程序,但主应用程序在IDE中依赖的插件版本将与命令行中的插件版本相同(即
$HOME/.grails/1.1/$PROJECT/plugins
)。有什么方法可以实现此设置吗?

您可以通过两个步骤实现此设置

1) 在模块根目录中添加外部插件内容

右键单击模块根并选择“模块设置”。您在“来源”选项卡上。单击“添加内容根目录”按钮并选择$HOME/.grails/1.1/$PROJECT/plugins。现在在右边的文件夹树上,选择带有groovy文件的公共文件夹,并单击顶部按钮将它们标记为“源”。例如:/grails-app/[conf,services,domain…]和/src/[groovy,java…]。现在,您的模块将在代码建议中识别这些源代码

2) 在模块依赖项中添加外部插件的JAR依赖项

现在切换到“依赖项”选项卡。选择“Grails用户库”并单击“编辑”。然后,对于每个具有jar依赖项(lib文件夹)的外部插件,您必须单击“附加jar目录”,然后选择HOME/.grails/1.1/$PROJECT/plugins/lib。现在,您的模块可以识别jar依赖项,您可以使用make或其他用于检查依赖项的工具运行应用程序


希望这会有所帮助,WAN

我认为这将在v8.1.3中得到解决,如EAP构建中所示。

我确认,这在8.1.3中已固定