Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

maven-jaxb2-plugin fails in Eclipse M2E, but works fine from command line #315

Open
davidmichaelkarr opened this issue Apr 2, 2024 · 0 comments

Comments

@davidmichaelkarr
Copy link

We're using maven-jaxb2-plugin v0.14.0 in many projects. It works fine from the command line. I'm posting this here not because I think there's something wrong with the plugin, but because you may have heard of this problem.

In Eclipse, using the M2E plugin, we get exceptions in the problems view like this:


	org.eclipse.core.runtime.CoreException: Failed to execute mojo org.jvnet.jaxb2.maven2:maven-jaxb2-plugin:0.14.0:generate {execution: bds}
		at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeMojo(MavenExecutionContext.java:404)
		at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.lambda$2(MavenExecutionContext.java:355)
		at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:458)
		at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:339)
		at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:354)
		at org.eclipse.m2e.core.project.configurator.MojoExecutionBuildParticipant.build(MojoExecutionBuildParticipant.java:57)
		at org.eclipse.m2e.core.internal.builder.MavenBuilderImpl.lambda$2(MavenBuilderImpl.java:159)
		at java.base/java.util.LinkedHashMap.forEach(LinkedHashMap.java:721)
		at org.eclipse.m2e.core.internal.builder.MavenBuilderImpl.build(MavenBuilderImpl.java:139)
		at org.eclipse.m2e.core.internal.builder.MavenBuilder$1.method(MavenBuilder.java:164)
		at org.eclipse.m2e.core.internal.builder.MavenBuilder$1.method(MavenBuilder.java:1)
		at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.lambda$1(MavenBuilder.java:109)
		at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:458)
		at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:292)
		at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.lambda$0(MavenBuilder.java:100)
		at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:458)
		at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:339)
		at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:278)
		at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.execute(MavenBuilder.java:83)
		at org.eclipse.m2e.core.internal.builder.MavenBuilder.build(MavenBuilder.java:192)
		at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:1077)
		at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:47)
		at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:296)
		at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:352)
		at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:441)
		at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:47)
		at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:444)
		at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:555)
		at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:503)
		at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:585)
		at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:207)
		at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:300)
		at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
	Caused by: org.apache.maven.plugin.PluginExecutionException: Execution bds of goal org.jvnet.jaxb2.maven2:maven-jaxb2-plugin:0.14.0:generate failed: Cannot invoke "java.lang.reflect.Method.invoke(Object, Object[])" because "com.sun.xml.bind.v2.runtime.reflect.opt.Injector.defineClass" is null
		at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:133)
		at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeMojo(MavenExecutionContext.java:402)
		... 32 more
	Caused by: java.lang.NullPointerException: Cannot invoke "java.lang.reflect.Method.invoke(Object, Object[])" because "com.sun.xml.bind.v2.runtime.reflect.opt.Injector.defineClass" is null
		at com.sun.xml.bind.v2.runtime.reflect.opt.Injector.inject(Injector.java:311)
		at com.sun.xml.bind.v2.runtime.reflect.opt.Injector.inject(Injector.java:97)
		at com.sun.xml.bind.v2.runtime.reflect.opt.AccessorInjector.prepare(AccessorInjector.java:87)
		at com.sun.xml.bind.v2.runtime.reflect.opt.OptimizedAccessorFactory.get(OptimizedAccessorFactory.java:179)
		at com.sun.xml.bind.v2.runtime.reflect.Accessor$FieldReflection.optimize(Accessor.java:285)
		at com.sun.xml.bind.v2.runtime.reflect.TransducedAccessor$CompositeTransducedAccessorImpl.<init>(TransducedAccessor.java:235)
		at com.sun.xml.bind.v2.runtime.reflect.TransducedAccessor.get(TransducedAccessor.java:175)
		at com.sun.xml.bind.v2.model.impl.RuntimeClassInfoImpl.calcTransducer(RuntimeClassInfoImpl.java:245)
		at com.sun.xml.bind.v2.model.impl.RuntimeClassInfoImpl.getTransducer(RuntimeClassInfoImpl.java:219)
		at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.createTransducer(RuntimeModelBuilder.java:145)
		at com.sun.xml.bind.v2.model.impl.SingleTypePropertyInfoImpl.getTransducer(SingleTypePropertyInfoImpl.java:140)
		at com.sun.xml.bind.v2.model.impl.RuntimeAttributePropertyInfoImpl.link(RuntimeAttributePropertyInfoImpl.java:78)
		at com.sun.xml.bind.v2.model.impl.ClassInfoImpl.link(ClassInfoImpl.java:1272)
		at com.sun.xml.bind.v2.model.impl.RuntimeClassInfoImpl.link(RuntimeClassInfoImpl.java:197)
		at com.sun.xml.bind.v2.model.impl.ModelBuilder.link(ModelBuilder.java:454)
		at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.link(RuntimeModelBuilder.java:133)
		at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:469)
		at com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:303)
		at com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:139)
		at com.sun.xml.bind.v2.runtime.JAXBContextImpl$JAXBContextBuilder.build(JAXBContextImpl.java:1156)
		at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:165)
		at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
		at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
		at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
		at java.base/java.lang.reflect.Method.invoke(Method.java:568)
		at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:297)
		at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:286)
		at javax.xml.bind.ContextFinder.find(ContextFinder.java:409)
		at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:721)
		at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:662)
		at com.sun.tools.xjc.reader.xmlschema.bindinfo.BindInfo.getCustomizationContext(BindInfo.java:336)
		at com.sun.tools.xjc.reader.xmlschema.bindinfo.BindInfo.getCustomizationUnmarshaller(BindInfo.java:362)
		at com.sun.tools.xjc.reader.xmlschema.bindinfo.AnnotationParserFactoryImpl$1.<init>(AnnotationParserFactoryImpl.java:85)
		at com.sun.tools.xjc.reader.xmlschema.bindinfo.AnnotationParserFactoryImpl.create(AnnotationParserFactoryImpl.java:84)
		at com.sun.xml.xsom.impl.parser.NGCCRuntimeEx.createAnnotationParser(NGCCRuntimeEx.java:401)
		at com.sun.xml.xsom.impl.parser.state.annotation.action0(annotation.java:89)
		at com.sun.xml.xsom.impl.parser.state.annotation.enterElement(annotation.java:114)
		at com.sun.xml.xsom.impl.parser.state.NGCCRuntime.sendEnterElement(NGCCRuntime.java:422)
		at com.sun.xml.xsom.impl.parser.state.NGCCHandler.spawnChildFromEnterElement(NGCCHandler.java:114)
		at com.sun.xml.xsom.impl.parser.state.simpleType.enterElement(simpleType.java:134)
		at com.sun.xml.xsom.impl.parser.state.NGCCRuntime.sendEnterElement(NGCCRuntime.java:422)
		at com.sun.xml.xsom.impl.parser.state.NGCCHandler.revertToParentFromEnterElement(NGCCHandler.java:151)
		at com.sun.xml.xsom.impl.parser.state.foreignAttributes.enterElement(foreignAttributes.java:91)
		at com.sun.xml.xsom.impl.parser.state.NGCCRuntime.sendEnterElement(NGCCRuntime.java:422)
		at com.sun.xml.xsom.impl.parser.state.NGCCHandler.spawnChildFromEnterElement(NGCCHandler.java:114)
		at com.sun.xml.xsom.impl.parser.state.simpleType.enterElement(simpleType.java:146)
		at com.sun.xml.xsom.impl.parser.state.NGCCRuntime.sendEnterElement(NGCCRuntime.java:422)
		at com.sun.xml.xsom.impl.parser.state.simpleType.enterElement(simpleType.java:110)
		at com.sun.xml.xsom.impl.parser.state.NGCCRuntime.sendEnterElement(NGCCRuntime.java:422)
		at com.sun.xml.xsom.impl.parser.state.simpleType.enterElement(simpleType.java:102)
		at com.sun.xml.xsom.impl.parser.state.NGCCRuntime.startElement(NGCCRuntime.java:263)
		at java.xml/org.xml.sax.helpers.XMLFilterImpl.startElement(XMLFilterImpl.java:539)
		at com.sun.tools.xjc.util.SubtreeCutter.startElement(SubtreeCutter.java:108)
		at com.sun.tools.xjc.reader.ExtensionBindingChecker.startElement(ExtensionBindingChecker.java:150)
		at java.xml/org.xml.sax.helpers.XMLFilterImpl.startElement(XMLFilterImpl.java:539)
		at com.sun.tools.xjc.reader.xmlschema.parser.IncorrectNamespaceURIChecker.startElement(IncorrectNamespaceURIChecker.java:128)
		at java.xml/org.xml.sax.helpers.XMLFilterImpl.startElement(XMLFilterImpl.java:539)
		at com.sun.tools.xjc.reader.xmlschema.parser.CustomizationContextChecker.startElement(CustomizationContextChecker.java:193)
		at java.xml/org.xml.sax.helpers.XMLFilterImpl.startElement(XMLFilterImpl.java:539)
		at com.sun.tools.xjc.reader.internalizer.DOMForestScanner$LocationResolver.startElement(DOMForestScanner.java:147)
		at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:244)
		at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:281)
		at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:250)
		at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:281)
		at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:250)
		at com.sun.xml.bind.unmarshaller.DOMScanner.scan(DOMScanner.java:127)
		at com.sun.tools.xjc.reader.internalizer.DOMForestScanner.scan(DOMForestScanner.java:92)
		at com.sun.tools.xjc.reader.internalizer.DOMForestScanner.scan(DOMForestScanner.java:100)
		at com.sun.tools.xjc.reader.internalizer.DOMForestParser.parse(DOMForestParser.java:104)
		at com.sun.tools.xjc.ModelLoader$XMLSchemaParser.parse(ModelLoader.java:251)
		at com.sun.xml.xsom.impl.parser.NGCCRuntimeEx.parseEntity(NGCCRuntimeEx.java:381)
		at com.sun.xml.xsom.impl.parser.NGCCRuntimeEx.importSchema(NGCCRuntimeEx.java:288)
		at com.sun.xml.xsom.impl.parser.state.importDecl.action0(importDecl.java:86)
		at com.sun.xml.xsom.impl.parser.state.importDecl.leaveElement(importDecl.java:197)
		at com.sun.xml.xsom.impl.parser.state.NGCCRuntime.endElement(NGCCRuntime.java:319)
		at java.xml/org.xml.sax.helpers.XMLFilterImpl.endElement(XMLFilterImpl.java:558)
		at com.sun.tools.xjc.reader.internalizer.DOMForestScanner$LocationResolver.endElement(DOMForestScanner.java:140)
		at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:255)
		at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:281)
		at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:250)
		at com.sun.xml.bind.unmarshaller.DOMScanner.scan(DOMScanner.java:127)
		at com.sun.tools.xjc.reader.internalizer.DOMForestScanner.scan(DOMForestScanner.java:92)
		at com.sun.tools.xjc.ModelLoader.loadWSDL(ModelLoader.java:392)
		at com.sun.tools.xjc.ModelLoader.load(ModelLoader.java:158)
		at com.sun.tools.xjc.ModelLoader.load(ModelLoader.java:117)
		at org.jvnet.mjiip.v_2_3.XJC23Mojo.loadModel(XJC23Mojo.java:50)
		at org.jvnet.mjiip.v_2_3.XJC23Mojo.doExecute(XJC23Mojo.java:40)
		at org.jvnet.mjiip.v_2_3.XJC23Mojo.doExecute(XJC23Mojo.java:28)
		at org.jvnet.jaxb2.maven2.RawXJC2Mojo.doExecute(RawXJC2Mojo.java:478)
		at org.jvnet.jaxb2.maven2.RawXJC2Mojo.execute(RawXJC2Mojo.java:320)
		at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:126)
		... 33 more

It appears that I can just ignore this, but it is hard to ignore. I can't tell for certain whether it's causing any functionality problems in Eclipse.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant