Macos Mac OS X扩展类上的Grails 2.4.0无法加载

Macos Mac OS X扩展类上的Grails 2.4.0无法加载,macos,grails,Macos,Grails,下载并安装Grails 2.4.0后,在运行任何Grails命令(包括Grails-version)时,我都会收到以下警告: 警告:模块[groovy all]-无法加载扩展类[org.codehaus.groovy.runtime.NioGroovyMethods] 一次网络搜索揭示了这篇关于groovy的帖子: 这一条包括但不具体涉及这一警告: 我正在运行MacOSX10.9.3,java版本“1.7.0_40” 这是一个可以忽略的虚假错误吗?到目前为止,grails似乎运行良好,但我想我

下载并安装Grails 2.4.0后,在运行任何Grails命令(包括Grails-version)时,我都会收到以下警告:

警告:模块[groovy all]-无法加载扩展类[org.codehaus.groovy.runtime.NioGroovyMethods]

一次网络搜索揭示了这篇关于groovy的帖子:

这一条包括但不具体涉及这一警告:

我正在运行MacOSX10.9.3,java版本“1.7.0_40”


这是一个可以忽略的虚假错误吗?到目前为止,grails似乎运行良好,但我想我会发布相关信息,看看其他人是否也经历过类似的情况。

groovy.nio.2.3.0.jar模块需要Java 7或更高版本,这就是为什么会出现错误的原因


您可以升级java版本或删除该模块。该警告本质上是无害的。

问题在于,如果未设置JAVA\u HOME,grails会将JAVA\u HOME设置为/Library/JAVA/HOME。很可能,您的系统在该目录下有较旧的jdk(1.6)。正如paranoid提到的,它需要JDK1.7。因此,即使安装了jdk1.7,但grails根本不使用它

以下是此问题的解决方案:

  • 下载并安装Oracle JDK,它将安装到/Library/Java/JavaVirtualMachines/jdk1.7.0_51.JDK(假设您安装了jdk1.7u51)
  • 如果不希望显式设置JAVA_HOME,请运行以下命令更改系统设置
  • 那么警告就应该消失了

  • 安装Java7

  • 找到了Java7的家

  • 在Mac OS上运行/usr/libexec/java_home。例如,我的主页是/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/home

  • 创建环境变量GRAILS\u HOME、JAVA\u HOME,并将它们添加到PATH和.bash\u概要文件中
  • 例如,my.bash_概要文件的内容是:

    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home
    export GRAILS_HOME=/Users/admin/work/grails
    export PATH=$JAVA_HOME:$GRAILS_HOME/bin:$PATH
    

    现在grails正在使用jdk7,并且没有任何警告。

    我也看到了这个错误。我正在用Java6运行OSX10.9.3,这是正确的答案,只是在我的机器上有点复杂。不知何故,在多次升级操作系统后,我安装了1.7JRE和1.6JDK。所以,当我输入java-version时,我得到了1.7,但如果我输入javac-version,我得到了1.6。在安装了1.7JDK并修复了所有的JavaVM.framework链接之后,问题似乎消失了。
    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home
    export GRAILS_HOME=/Users/admin/work/grails
    export PATH=$JAVA_HOME:$GRAILS_HOME/bin:$PATH