下载并安装Grails 2.4.0后,运行任何grails命令时会收到以下警告,包括grails -version:
警告:模块[groovy-all] - 无法加载扩展类[org.codehaus.groovy.runtime.NioGroovyMethods]
网络搜索显示有关groovy的帖子:http://permalink.gmane.org/gmane.comp.lang.groovy.user/64538
这一个,包括但不是专门针对此警告: https://jira.grails.org/browse/GPFILTERPANE-125
我正在运行Mac OS X 10.9.3,java版本“1.7.0_40”。
这是一个可以忽略的虚假错误吗?到目前为止,grails似乎工作正常,但我想我会发布它,看看其他人是否经历过类似的事情。
答案 0 :(得分:8)
如果没有设置JAVA_HOME,问题是grails将JAVA_HOME设置为/ Library / Java / Home。最有可能的是,您的系统在该目录下具有较旧的jdk(1.6)。正如提到的偏执狂,它需要jdk 1.7。因此,即使你安装了jdk1.7,但grails根本不使用它。
以下是此问题的解决方案:
cd /System/Library/Frameworks/JavaVM.framework/Versions rm CurrentJDK ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents CurrentJDK
然后警告应该消失。
答案 1 :(得分:6)
安装Java 7
找到Java 7 Home的位置。
在Mac OS上运行/ usr / libexec / java_home。例如我的家是/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home
例如我的.bash_profile文件的内容是:
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并且没有警告。
答案 2 :(得分:0)
模块groovy.nio.2.3.0.jar需要Java 7或更高版本,这就是您收到错误的原因。
您可以升级java版本或删除该模块。警告基本上是无害的。