当前位置: 首页 > 面试题库 >

GGTS(Eclipse)和JAVA 1.8中不兼容的JVM

孟花蜂
2023-03-14
问题内容

由于升级到Java 1.8,在GGTS(日食)中运行grails应用程序时遇到了一些问题。

堆栈开始于:

Mar 05, 2015 3:51:31 PM org.springsource.loaded.jvm.JVM copyMethod
SEVERE: Problems copying method. Incompatible JVM?
java.lang.reflect.InvocationTargetException
    at sun.reflect.GeneratedMethodAccessor91.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.springsource.loaded.jvm.JVM.copyMethod(JVM.java:134)
    at org.springsource.loaded.ri.OriginalClassInvoker.createJavaMethod(OriginalClassInvoker.java:68)
    at org.springsource.loaded.ri.ReflectiveInterceptor.jlClassGetDeclaredMethods(ReflectiveInterceptor.java:151)
    at org.codehaus.groovy.reflection.CachedClass$3$1.run(CachedClass.java:84)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.codehaus.groovy.reflection.CachedClass$3.initValue(CachedClass.java:81)
...
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.springsource.loaded.ri.ReflectiveInterceptor.jlrMethodInvoke(ReflectiveInterceptor.java:1270)
    at org.codehaus.groovy.grails.cli.support.GrailsStarter.rootLoader(GrailsStarter.java:236)
    at org.codehaus.groovy.grails.cli.support.GrailsStarter.main(GrailsStarter.java:264)
Caused by: java.lang.IllegalArgumentException: Can not copy a non-root Method
    at java.lang.reflect.Method.copy(Method.java:151)
    ... 280 more

我曾经在Java 1.7中运行相同的应用程序。我的同事升级到1.8,并且不再能够运行它。

我已经使用SUN JDK进行了测试,现在又使用了OpenJDK,这对当前的JDK openjdk版本“ 1.8.0_40”* 没有帮助。 *

JAVA_HOME,JAVA_PATH和任何其他变量似乎都指向正确的JDK安装。我已经删除了所有以前的版本(从操作系统中删除了JDK
1.6和1.7,以确保没有对它们的引用)。

由于某种原因,GGTS仍然抱怨JVM错误。我知道该错误可能与试图在1.8中编译文件的1.7编译器有关,但是我不确定此引用来自eclipse中的哪个地方。

我的Eclipse安装信息在Java下列出了​​以下内容:

-vm
/usr/lib64/jvm/jre-1.8.0-openjdk/bin/java
eclipse.home.location=file:/home/arb/dev/applications/ggts-3.6.3.SR1/
eclipse.launcher=/home/arb/dev/applications/ggts-3.6.3.SR1/GGTS
eclipse.launcher.name=GGTS
eclipse.p2.data.area=@config.dir/../p2
eclipse.p2.profile=DefaultProfile
eclipse.product=org.springsource.ggts.ide
eclipse.startTime=1425566898624
eclipse.stateSaveDelayInterval=30000
eclipse.vm=/usr/lib64/jvm/jre-1.8.0-openjdk/bin/java
eclipse.vmargs=-Dgrails.console.enable.interactive=false
-Dgrails.console.enable.terminal=false
-Djline.terminal=jline.UnsupportedTerminal
-Dgrails.console.class=grails.build.logging.GrailsEclipseConsole
-Dosgi.requiredJavaVersion=1.6
-Xms60m
-Xmx1024m

问题答案:

这是与jdk8u40有关的问题,请回到jdku31。它适用于该版本。我在Windows和Linux环境中都遇到相同的问题。



 类似资料:
  • 由于升级到Java 1.8,在GGTS(eclipse)中运行grails应用程序时遇到一些问题。 堆栈从以下内容开始: 我曾经在1.7Java运行同样的应用,同事升级到1.8,再也无法运行了。 我用SUN JDK进行了测试,现在又用OpenJDK了,这对当前的JDK OpenJDK版本“1.8.0_40”没有帮助 JAVA_HOME,JAVA_PATH和任何其他变量似乎指向正确的JDK安装我已经

  • 我试图在Eclipse和GGTS上编译我的Grails项目,在这两个平台上每次都收到相同的错误: 我已经激活了堆空间查看器,但它从来没有达到我在eclipse.ini和ggts.ini上定义的1GB最大大小(甚至没有达到400M),所以我想问题是我的MAC上的JVM选项应该改变。 我设置的Eclipse和GGTS值: -xx:permsize=1024m java-xx:+printflagsfi

  • OSX小牛。几周前,我安装了最新的64位eclipse。它运行得很好。几周后,我安装了jenv,我相信从那以后eclipse就不能正常工作了。当然,eclipse和JDK 8都是64位的。为什么会出现错误对话框“不兼容的JVM”,消息是“JVM的1.6.x版本不适合此产品。需要1.7.0或更高版本”。 找到eclipse.ini后,我在eclipse.ini文件中找到了这个。 为什么日食早些时候工

  • 问题内容: 我刚刚安装了Eclipse Oxygen并创建了一个JFrame项目。从源视图切换到设计视图时,出现“不兼容的Java版本错误”。 完全错误Desc:Eclipse在0以下运行,但是此Java项目的Java兼容级别为10,因此WindowBuilder将无法从该项目中加载类。对项目使用较低级别的Java,或使用较新的Java版本运行Eclipse。 我在Windows中检查了版本->首

  • 我已经下载了EclipseMat,并尝试在Windows上启动它。 执行显示一个弹出窗口,显示与此消息不兼容的JVM:JVM的1.8.0242版本不适用于此产品。版本:11或更高版本是必需的。 如本文所述,我创建了一个目录,并复制了一个解决问题的OpenJDK 16。 但是我不觉得这个解决方案很优雅。所以我试图在中添加参数,并试图创建一个文件作为文档的引用。它不起作用! 有没有一种方法可以配置JV

  • 对于我的项目,我有一个emf模型。模型是从后端获取的数据填充的,作为rest响应,即XML。我需要更改后端响应以向元素添加一个新属性。现在emf模型抛出兼容性错误,表示未找到新属性。是否有任何方法使emf模型与新的rest xml响应兼容。意思是说emf模型应该忽略XML的新属性,并填充其余的内容。因为我也想为老客户提供支持。