Community
Participate
Working Groups
I tried to compile my projects with the maven plugin 2.5.1 and 2.5.2 and the compiler crashed. With version 2.4.3 the compilation succeeds. Unfortunately, I cannot provide source to reproduce the error. It seems like the issue is related to the following line (find also in the log below) [ERROR] resource is empty: java:/Objects/com.Section ************************ this is a JAX-B generated class ****************** It seems like imported JAX-B classes kill the compiler. If I left only one import to a class that references JAX-B classes, then I get errors which are ignored and the compilation continues happily. [INFO] --- xtend-maven-plugin:2.5.1:compile (default) @ re-core --- [ERROR] resource is empty: java:/Objects/com.Section [ERROR] resource is empty: java:/Objects/com.SomeSection <<< and the compilation goes on >>> If I import any of those JAX-B classes directly, then the crash happens. The eclipse compilation succeeds at the same time. [INFO] --- xtend-maven-plugin:2.5.1:compile (default) @ core --- [ERROR] resolution of uriFragment '|3' failed. org.eclipse.emf.ecore.resource.impl.ResourceSetImpl$1DiagnosticWrappedException: org.eclipse.xtext.common.types.access.TypeResource$CannotLoadTypeResourceException: java.lang.NullPointerException at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.handleDemandLoadException(ResourceSetImpl.java:319) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(ResourceSetImpl.java:278) at org.eclipse.xtext.resource.XtextResourceSet.getResource(XtextResourceSet.java:201) at org.eclipse.xtext.common.types.access.impl.ClasspathTypeProvider.findTypeByClass(ClasspathTypeProvider.java:212) at org.eclipse.xtext.common.types.access.impl.ClasspathTypeProvider.doFindTypeByName(ClasspathTypeProvider.java:197) at org.eclipse.xtext.common.types.access.impl.ClasspathTypeProvider.findTypeByName(ClasspathTypeProvider.java:189) at org.eclipse.xtext.common.types.xtext.AbstractTypeScope.getSingleElement(AbstractTypeScope.java:60) at org.eclipse.xtext.common.types.xtext.AbstractTypeScope.getSingleElement(AbstractTypeScope.java:54) at org.eclipse.xtend.core.scoping.RecordingTypeScope.getSingleElement(RecordingTypeScope.java:41) at org.eclipse.xtext.scoping.impl.AbstractScope.getSingleElement(AbstractScope.java:105) at org.eclipse.xtext.linking.impl.DefaultLinkingService.getLinkedObjects(DefaultLinkingService.java:120) at org.eclipse.xtext.linking.lazy.LazyLinkingResource.getEObject(LazyLinkingResource.java:228) at org.eclipse.xtext.xbase.resource.BatchLinkableResource.getEObject(BatchLinkableResource.java:105) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:198) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:258) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.xtext.xtype.impl.XImportDeclarationImpl.getImportedType(XImportDeclarationImpl.java:188) at org.eclipse.xtext.xtype.impl.XImportDeclarationImpl.eGet(XImportDeclarationImpl.java:283) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1011) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1003) at org.eclipse.emf.ecore.util.EContentsEList$FeatureIteratorImpl.hasNext(EContentsEList.java:403) at org.eclipse.emf.ecore.util.EcoreUtil.resolveCrossReferences(EcoreUtil.java:303) at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:297) at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:282) at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:270) at org.eclipse.xtend.core.compiler.batch.XtendBatchCompiler.compile(XtendBatchCompiler.java:392) at org.eclipse.xtend.maven.AbstractXtendCompilerMojo.compile(AbstractXtendCompilerMojo.java:109) at org.eclipse.xtend.maven.XtendCompile.compileSources(XtendCompile.java:66) at org.eclipse.xtend.maven.XtendCompile.internalExecute(XtendCompile.java:59) at org.eclipse.xtend.maven.AbstractXtendMojo.execute(AbstractXtendMojo.java:39) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) Caused by: org.eclipse.xtext.common.types.access.TypeResource$CannotLoadTypeResourceException: java.lang.NullPointerException at org.eclipse.xtext.common.types.access.TypeResource.doLoad(TypeResource.java:118) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1518) at org.eclipse.xtext.common.types.access.TypeResource.load(TypeResource.java:102) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoad(ResourceSetImpl.java:259) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(ResourceSetImpl.java:274) ... 50 more Caused by: java.lang.RuntimeException: java.lang.NullPointerException at org.eclipse.xtext.common.types.access.impl.DeclaredTypeFactory.createType(DeclaredTypeFactory.java:94) at org.eclipse.xtext.common.types.access.impl.DeclaredTypeFactory.createType(DeclaredTypeFactory.java:1) at org.eclipse.xtext.common.types.access.binary.BinaryClassMirror.initialize(BinaryClassMirror.java:41) at org.eclipse.xtext.common.types.access.TypeResource.doLoad(TypeResource.java:115) ... 54 more Caused by: java.lang.NullPointerException at org.eclipse.xtext.common.types.access.binary.asm.JvmAnnotationReferenceBuilder$1.visitEnd(JvmAnnotationReferenceBuilder.java:81) at org.objectweb.asm.ClassReader.a(Unknown Source) at org.objectweb.asm.ClassReader.a(Unknown Source) at org.objectweb.asm.ClassReader.a(Unknown Source) at org.objectweb.asm.ClassReader.accept(Unknown Source) at org.objectweb.asm.ClassReader.accept(Unknown Source) at org.eclipse.xtext.common.types.access.binary.asm.JvmDeclaredTypeBuilder.buildType(JvmDeclaredTypeBuilder.java:71) at org.eclipse.xtext.common.types.access.impl.DeclaredTypeFactory.doCreateType(DeclaredTypeFactory.java:112) at org.eclipse.xtext.common.types.access.impl.DeclaredTypeFactory.createType(DeclaredTypeFactory.java:92) ... 57 more [ERROR] resource is empty: java:/Objects/com.Section [ERROR] resolution of uriFragment '|3' failed. java.lang.IllegalStateException: Resource has not been loaded at org.eclipse.xtext.common.types.access.impl.ClasspathTypeProvider.findTypeByClass(ClasspathTypeProvider.java:265) at org.eclipse.xtext.common.types.access.impl.ClasspathTypeProvider.findTypeByClass(ClasspathTypeProvider.java:213) at org.eclipse.xtext.common.types.access.impl.ClasspathTypeProvider.doFindTypeByName(ClasspathTypeProvider.java:197) at org.eclipse.xtext.common.types.access.impl.ClasspathTypeProvider.findTypeByName(ClasspathTypeProvider.java:189) at org.eclipse.xtext.common.types.xtext.AbstractTypeScope.getSingleElement(AbstractTypeScope.java:60) at org.eclipse.xtext.common.types.xtext.AbstractTypeScope.getSingleElement(AbstractTypeScope.java:54) at org.eclipse.xtend.core.scoping.RecordingTypeScope.getSingleElement(RecordingTypeScope.java:41) at org.eclipse.xtext.scoping.impl.AbstractScope.getSingleElement(AbstractScope.java:105) at org.eclipse.xtext.linking.impl.DefaultLinkingService.getLinkedObjects(DefaultLinkingService.java:120) at org.eclipse.xtext.linking.lazy.LazyLinkingResource.getEObject(LazyLinkingResource.java:228) at org.eclipse.xtext.xbase.resource.BatchLinkableResource.getEObject(BatchLinkableResource.java:105) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:223) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:202) at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:258) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1473) at org.eclipse.xtext.xtype.impl.XImportDeclarationImpl.getImportedType(XImportDeclarationImpl.java:188) at org.eclipse.xtext.xtype.impl.XImportDeclarationImpl.eGet(XImportDeclarationImpl.java:283) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1011) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1003) at org.eclipse.emf.ecore.util.EContentsEList$FeatureIteratorImpl.hasNext(EContentsEList.java:403) at org.eclipse.emf.ecore.util.EcoreUtil.resolveCrossReferences(EcoreUtil.java:303) at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:297) at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:282) at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:270) at org.eclipse.xtend.core.compiler.batch.XtendBatchCompiler.compile(XtendBatchCompiler.java:392) at org.eclipse.xtend.maven.AbstractXtendCompilerMojo.compile(AbstractXtendCompilerMojo.java:109) at org.eclipse.xtend.maven.XtendCompile.compileSources(XtendCompile.java:66) at org.eclipse.xtend.maven.XtendCompile.internalExecute(XtendCompile.java:59) at org.eclipse.xtend.maven.AbstractXtendMojo.execute(AbstractXtendMojo.java:39) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Any chance to provide a reduced example with such a JAX-B generated class?
Created attachment 240024 [details] example maven project Fortunately, I was able to isolate a minimal example. Just do a mvn install on it.
Pushed to maintenance and for review on master.
Fixed
Requested via bug 522520. -M.