从Windows7中的命令行开始Grails 2.0.3错误

时间:2012-04-22 01:04:22

标签: windows grails

希望一个有同情心的灵魂可以帮助解决这个奇怪的窗户问题

我正在尝试在Windows上运行grails应用程序,但无法启动grails。

我已经从grails.org下载了2.0.3发行版并从github中提取并构建了源代码。

我收到的错误如下:

Error: Could not find or load main class 
       org.codehaus.groovy.grails.cli.support.GrailsStarter

我为找到这个问题的解决方案所做的搜索(有些人已经做过)没有得到任何帮助:我发现的是我的环境变量设置不正确的建议。 (例如here

我觉得我在设置我的变量时非常小心。我有以下配置,全部在系统变量下:

JAVA_HOME C:\java\jdk7
GRAILS_HOME C:\grails\2.0.3  // also set it to C:\grails\source\grails-core when dlded from source
GROOVY_HOME C:\groovy\1.8.6
PATH %JAVA_HOME%\bin;%GRAILS_HOME%\bin;%GROOVY_HOME%\bin;$PATH

我在下载groovy和设置环境变量之前和之后尝试了一些事情,我担心此时我已经迷失了。 Groovy开始很好,java开始很好,但grails无法启动。

Windows中的其他人是否遇到过最新grails版本的问题?

7 个答案:

答案 0 :(得分:18)

我觉得这不是一个傻瓜,但是......

Grails正在从Windows DOS提示符(cmd)作为命令运行。它不是我在Windows上使用的bash工作(git bash,出于方便和熟悉linux cmds)。

对于那些在这种情况下发现自己的人,请务必在Windows cmd提示符中尝试此操作。 (那些了解为什么这个在DOS提示符下运行而不是在自定义类似linux的bash中的人请重点说明,我会用我遇到的任何调查结果来更新这个答案!)

答案 1 :(得分:6)

我在DOS CMD shell中遇到了此错误消息。事实证明,我将GRAILS_HOME设置为2.2.0,但我的PATH指向了Grails-2.2.1 \ bin。一旦我修复了这个不匹配,错误消失了,事情很好。建议在CMD shell中使用“set”来查看实际设置的环境。

答案 2 :(得分:3)

我在msysgit控制台遇到了同样的问题,可以通过将环境变量$ GRAILS_HOME设置为unix格式来解决这个问题:

export GRAILS_HOME=/c/grails/2.0.3

这解决了上述错误,但在执行“grails run-app”时导致了一个新错误:

$ grails run-app
Error opening zip file or JAR manifest missing : /d/Programme/grails-2.2.4/lib/org.springsource.springloaded/springloaded-core/jars/springloaded-core-1.1.3.jar
Error occurred during initialization of VM
agent library failed to init: instrument

jar可以在记录的路径下找到,所以我不知道为什么它不起作用。我还在尝试解决这个错误。

我希望上述解决方案可以帮助任何人。

答案 3 :(得分:3)

Grails 2.3.7,Win7,Java7,msysgit:

默认情况下,grails无法从msysgit启动。

将copy cygpath.exe从cygwin修复到msysgit / bin。并修改startGrails

# For Cygwin, ensure paths are in UNIX format before anything is touched

部分

替换

    if $cygwin ; then

    if [ $cygwin -o $mingw ] ; then

或者只是在unix样式的grails / bin / startGrails中设置GRAILS_HOME,例如

$GRAILS_HOME=/c/program/grails-2.3.7

PS

关于cygpath.exe的

有用的link

答案 4 :(得分:1)

你的设置应该按原样运作。我会验证我的grails安装没有损坏。

答案 5 :(得分:0)

我遇到了这个问题,我意识到我在路径中有了常规的2.1.7。我从路径中删除了这个groovy并且Grails工作了。

答案 6 :(得分:0)

正如用户'sfitts'在他的评论中指出的那样(我还不能补充),问题已在http://jira.grails.org/browse/GRAILS-8271得到解决/修复。此修复程序已包含在我的Grails 2.3.11安装中。

但是我还必须在Windows中取消定义我的GRAILS_HOME环境变量才能使其正常工作(启动脚本会自动检测并设置此变量)。