简体   繁体   English

生成 GUI 源时未找到 Class java.lang.NoClassDefFoundError: com/sun/xml/bind/v2/model/annotation/AnnotationReader [Codenameone]

[英]Class not found while generating the GUI sources java.lang.NoClassDefFoundError: com/sun/xml/bind/v2/model/annotation/AnnotationReader [Codenameone]

Im using eclipse 2021-3 ( detailed version below), and after updating my form in GUIBuilder I noticed the initGuiBuilderComponents java method in the form class was empty but the.gui file had the components declared.我正在使用 eclipse 2021-3(下面的详细版本),在 GUIBuilder 中更新我的表单后,我注意到 initGuiBuilderComponents java 方法在 ZA2F2ED4F8EBC2CBB14C21A29DC40 形式中声明的组件为空,但 AB 文件为空

The stack trace I got after saving the changes in the GUIBuilder is:我在 GUIBuilder 中保存更改后得到的堆栈跟踪是:

enGuiSrc:
[generateGuiSources] Generating GUI sources
[generateGuiSources] timeStr=1.0.0-1621275794779-1621275373210, lastTime=1.0.0-1621275794779-1621275373210
[generateGuiSources] Summary.java unmodified, skipping
[generateGuiSources] timeStr=1.0.0-1622573752664-1622594808739, lastTime=1.0.0-1622573752664-1622594776479
[generateGuiSources] Processing GUI builder file: /Users/jahrvis/eclipse-workspace-mobile/BabyTracker/src/com/jahrvis/mobile/babytracker/forms/CalendarForm.java
[generateGuiSources] Attempting to generate GUI sources for /Users/jahrvis/eclipse-workspace-mobile/BabyTracker/res/guibuilder/com/jahrvis/mobile/babytracker/forms/CalendarForm.gui with System JAXB
[generateGuiSources] Failed to generate Gui Source with System JAXB.  Will attempt using bundled JAXB.

BUILD FAILED
/Users/jahrvis/eclipse-workspace-mobile/BabyTracker/build.xml:49: java.lang.RuntimeException: java.lang.NoClassDefFoundError: com/sun/xml/bind/v2/model/annotation/AnnotationReader
    at com.codename1.build.client.GenerateGuiSources.generateGuiSource(GenerateGuiSources.java:294)
    at com.codename1.build.client.GenerateGuiSources.generateGuiSource(GenerateGuiSources.java:246)
    at com.codename1.build.client.GenerateGuiSources.execute(GenerateGuiSources.java:216)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:564)
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
    at org.apache.tools.ant.Task.perform(Task.java:350)
    at org.apache.tools.ant.Target.execute(Target.java:449)
    at org.apache.tools.ant.Target.performTasks(Target.java:470)
    at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1401)
    at org.apache.tools.ant.Project.executeTarget(Project.java:1374)
    at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
    at org.eclipse.ant.internal.core.ant.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:34)
    at org.apache.tools.ant.Project.executeTargets(Project.java:1264)
    at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:712)
    at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:532)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:564)
    at org.eclipse.ant.core.AntRunner.run(AntRunner.java:374)
    at org.eclipse.ant.core.AntRunner.run(AntRunner.java:476)
    at codenameoneplugin.EclipseGUIBuilderConnector$2.run(EclipseGUIBuilderConnector.java:142)
    at java.base/java.lang.Thread.run(Thread.java:832)
Caused by: java.lang.NoClassDefFoundError: com/sun/xml/bind/v2/model/annotation/AnnotationReader
    at java.base/java.lang.ClassLoader.defineClass1(Native Method)
    at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1016)
    at org.apache.tools.ant.AntClassLoader.defineClassFromData(AntClassLoader.java:1153)
    at org.apache.tools.ant.AntClassLoader.getClassFromStream(AntClassLoader.java:1321)
    at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1373)
    at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1338)
    at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:1093)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
    at java.base/java.lang.Class.getDeclaredMethods0(Native Method)
    at java.base/java.lang.Class.privateGetDeclaredMethods(Class.java:3325)
    at java.base/java.lang.Class.getMethodsRecursive(Class.java:3466)
    at java.base/java.lang.Class.getMethod0(Class.java:3452)
    at java.base/java.lang.Class.getMethod(Class.java:2199)
    at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:258)
    at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:250)
    at javax.xml.bind.ContextFinder.find(ContextFinder.java:447)
    at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:652)
    at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:599)
    at com.codename1.build.client.GenerateGuiSources.generateGuiSource_(GenerateGuiSources.java:301)
    at com.codename1.build.client.GenerateGuiSources.access$000(GenerateGuiSources.java:32)
    at com.codename1.build.client.GenerateGuiSources$1.run(GenerateGuiSources.java:272)
    ... 1 more
Caused by: java.lang.ClassNotFoundException: com.sun.xml.bind.v2.model.annotation.AnnotationReader
    at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1383)
    at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1338)
    at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:1093)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
    ... 22 more

Total time: 0 seconds

Version: 2021-03 (4.19.0)
Build id: 20210312-0638 

Any clue if this is a framework issue with the new eclipse?如果这是新的 eclipse 的框架问题,有什么线索吗?

This is related to the JDK.这与JDK有关。 Originally the code was written for JDK 8 but jaxb was removed later and for JDK 11 we try to dynamically download it which doesn't always work well.最初代码是为 JDK 8 编写的,但后来删除了 jaxb,对于 JDK 11,我们尝试动态下载它,但这并不总是很好。

I think the best workaround would be a migration to Maven which should solve the issue.我认为最好的解决方法是迁移到 Maven应该可以解决问题。

Alternatively try to make sure you're running with JDK 8 which should workaround this issue.或者尝试确保您使用 JDK 8 运行,这应该可以解决此问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 引起:java.lang.ClassNotFoundException:com.sun.xml.bind.v2.model.annotation.AnnotationReader - Caused by: java.lang.ClassNotFoundException: com.sun.xml.bind.v2.model.annotation.AnnotationReader 未捕获的Throwable java.lang.NoClassDefFoundError:com / sun / xml / internal / bind / v2 / runtime / reflect / opt / Const - Uncaught Throwable java.lang.NoClassDefFoundError:com/sun/xml/internal/bind/v2/runtime/reflect/opt/Const 错误注入:org.jvnet.mjiip.v_2.XJC2Mojo java.lang.NoClassDefFoundError:com/sun/xml/bind/api/ErrorListener - Error injecting: org.jvnet.mjiip.v_2.XJC2Mojo java.lang.NoClassDefFoundError: com/sun/xml/bind/api/ErrorListener NoClassDefFoundError:无法初始化类com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl - NoClassDefFoundError: Could not initialize class com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl java.lang.NoClassDefFoundError: javax/xml/soap/SOAPException while Generating Java Class62104F65FACCBEE50 - java.lang.NoClassDefFoundError: javax/xml/soap/SOAPException while Generating Java Class from WSDL 使用Docusign Java Client时遇到java.lang.NoClassDefFoundError:类com.sun.jersey.core.header.MediaTypes - Running into java.lang.NoClassDefFoundError: class com.sun.jersey.core.header.MediaTypes while using the Docusign Java Client java.lang.NoSuchMethodException:com.sun.xml.bind.v2.model.nav.ReflectionNavigator.getInstance() - java.lang.NoSuchMethodException: com.sun.xml.bind.v2.model.nav.ReflectionNavigator.getInstance() java.lang.NoClassDefFoundError:com / sun / star / lang / XEventListener - java.lang.NoClassDefFoundError: com/sun/star/lang/XEventListener java.lang.NoClassDefFoundError:com.sun.xml.ws.fault.SOAPFaultBuilder - java.lang.NoClassDefFoundError: com.sun.xml.ws.fault.SOAPFaultBuilder java.lang.NoClassDefFoundError:com / sun / istack / tools / DefaultAuthenticator $ Receiver - java.lang.NoClassDefFoundError: com/sun/istack/tools/DefaultAuthenticator$Receiver
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM