11

希望有志同道合的人可以帮助解决这个奇怪的窗户问题

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

我都从 grails.org 下载了 2.0.3 发行版,并从 github 拉取并构建了源代码。

我收到的错误如下:

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

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

不过,我觉得我在设置变量时非常小心。我在系统变量下配置了以下内容:

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 版本有此问题?

4

7 回答 7

17

我觉得自己像个傻瓜不尝试这个,但是......

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

对于那些发现自己处于这种情况的人,请确保您也在 Windows cmd 提示符下尝试此操作。(那些对为什么这在 DOS 提示符下有效但在自定义的类似 linux 的 bash 中无效的人有任何见解,请权衡一下,我会用我遇到的任何发现来更新这个答案!)

于 2012-04-24T00:52:10.840 回答
7

我在 DOS CMD shell 中遇到了这个错误消息。结果,我将 GRAILS_HOME 设置为 2.2.0,但我的 PATH 指向 Grails-2.2.1\bin。一旦我修复了这种不匹配,错误就消失了,一切正常。建议在您的 CMD shell 中使用“set”来查看您的环境实际设置为什么。

于 2013-04-21T18:21:25.877 回答
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 可以在记录的路径下找到,所以我不知道为什么它不起作用。我仍在尝试解决此错误。

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

于 2013-08-21T07:29:27.647 回答
3

Grails 2.3.7、Win7、Java7、msysgit:

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

修复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

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

$GRAILS_HOME=/c/program/grails-2.3.7

ps

关于 cygpath.exe 的有用链接

于 2014-04-22T17:18:44.037 回答
1

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

于 2012-04-22T07:31:57.327 回答
0

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

于 2013-10-25T14:05:11.000 回答
0

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

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

于 2015-09-07T14:54:23.290 回答