当我将Grails项目导入IntelliJ IDEA时,我遇到了一个问题。没有任何依赖项作为库添加。那里的一切都说工具 - > Grails - >同步Grails设置应足以配置项目。但是,当我运行该命令时,我收到以下错误:
"C:\Program Files\Java\jdk1.7.0_75\bin\java" -Dgrails.home=C:\Users\req88100\.gvm\grails\2.4.4 -Dbase.dir=C:\Users\req88100\Projects\COI_2.4.4 "-Dtools.jar=C:\Program Files\Java\jdk1.7.0_75\lib\tools.jar" -Dgroovy.starter.conf=C:\Users\req88100\.gvm\grails\2.4.4/conf/groovy-starter.conf -Xmx768M -Xms768M -XX:MaxPermSize=256m -XX:PermSize=256m -Djline.WindowsTerminal.directConsole=false -Dfile.encoding=windows-1252 -classpath C:\Users\req88100\.gvm\grails\2.4.4\lib\org.codehaus.groovy\groovy-all\jars\groovy-all-2.3.7.jar;C:\Users\req88100\.gvm\grails\2.4.4\dist\grails-bootstrap-2.4.4.jar org.codehaus.groovy.grails.cli.support.GrailsStarter --main org.codehaus.groovy.grails.cli.GrailsScriptRunner --conf C:\Users\req88100\.gvm\grails\2.4.4/conf/groovy-starter.conf "idea-print-project-settings -plain-output"
|Loading Grails 2.4.4
|Configuring classpath
|Running pre-compiled script
|Script 'IdeaPrintProjectSettings' not found, did you mean:
1) SetProxy_
2) CreateMultiProjectBuild_
3) Interactive
4) ClearProxy_
5) UrlMappingsReport
Please make a selection or enter Q to quit:
我可以手动将jar作为库添加到模块中,但这很麻烦。没有它,代码完成都不能正常工作。该项目工作正常,因为grails run-app
运行得很好。
这适用于Windows 7上的IntelliJ IDEA 14.1.3和几个不同版本的Grails 2.x.x.我手动尝试了这个命令是Cygwin和标准的Windows命令提示符。两者都产生与IntelliJ IDEA相同的结果。
idea-print-project-settings
或IdeaPrintProjectSettings
的Google搜索结果非常少。我不确定这个剧本应该来自哪里。
如何配置IntelliJ IDEA以正确地将库拉入模块配置?
答案 0 :(得分:1)
了解Grails如何解析Gant脚本确实有帮助:
http://grails.github.io/grails-doc/2.3.x/guide/commandLine.html
Grails在以下目录中搜索要执行的Gant脚本:
- USER_HOME / .grails /脚本
- PROJECT_HOME /脚本
- PROJECT_HOME /插件/ * /脚本
- GRAILS_HOME /脚本
问题似乎是IntelliJ IDEA自动提供此Gant脚本,但将脚本放在错误的位置。
使用VisualVM,这是用户目录:
user.dir=C:\Users\%USERNAME%
user.home=\\SOME\network\drive\%USERNAME%
因此即使Cygwin,以及似乎IntelliJ IDEA,将C:\Users\%USERNAME%
视为主目录,Windows组策略也会将其映射到网络共享,而Java将此值用作user.home
。
查看C:\Users\%USERNAME%\.grails\scripts
,我找到了该脚本。我将其复制到\\SOME\network\drive\%USERNAME%\.grails\scripts
,然后Grails识别出脚本,IntelliJ IDEA能够正确配置。
答案 1 :(得分:0)
如果你在intellij中遇到“执行脚本IdeaPrintProjectSettings:错误”,请在linux上试试这个:
现在尝试在intellij中重建项目,可能必须先使缓存无效。
祝你好运, 大卫答案 2 :(得分:0)
我通过添加IdeaPrintProjectSettings.groovy解决了这个问题 USER-HOME.grails \ scripts \ IdeaPrintProjectSettings.groovy(我正在使用IDEA版本2016) 要么 USER-HOME.grails \ IdeaPrintProjectSettings.groovy 这取决于您的IDEA版本。
(抱歉,我不知道如何在stackoverflow中为需要它的人附加此文件)。
答案 3 :(得分:0)
我刚刚在Windows 10上遇到了这个问题,经过几次尝试我终于能够解决它。我只是做了以下事情:
搜索了IdeaPrintProjectSettings.groovy
脚本。
将其复制到我的实际Grails脚本目录中,该目录类似于...\Grails2.2.2\scripts
或IntelliJ当时指向的任何内容。
再次同步了我的Grails项目。
如前所述,这里的问题是Grails的IntelliJ上下文正在另一个目录中寻找此脚本。就我而言,IntelliJ正在Grails缓存中查找。
答案 4 :(得分:0)
我通过在usernamefolder/.grails/
中创建脚本目录解决了这个问题