Community
Participate
Working Groups
Build Identifier: 20100617-1415 I'm actually running 64-bit Windows XP. When I start up eclipse, I get the Problem Occurred dialog containing: An internal error occurred during: "Initializing Java Tooling". java.lang.NullPointerException Eclipse does open, and seems to work, but I'd like to get rid of the error. I suspect I have pieces of an old corrupted project lying around somewhere. Error copied from .metadata/.log: !ENTRY org.eclipse.ui 4 4 2010-08-16 08:21:39.311 !MESSAGE java.lang.NullPointerException !STACK 0 java.lang.NullPointerException at org.eclipse.jst.j2ee.internal.web.classpath.WebAppLibrariesContainer.computeClasspathEntries(WebAppLibrariesContainer.java:124) at org.eclipse.jst.common.jdt.internal.classpath.FlexibleProjectContainer.<init>(FlexibleProjectContainer.java:120) at org.eclipse.jst.j2ee.internal.web.classpath.WebAppLibrariesContainer.<init>(WebAppLibrariesContainer.java:58) at org.eclipse.jst.j2ee.internal.web.classpath.WebAppLibrariesContainerInitializer.initialize(WebAppLibrariesContainerInitializer.java:35) at org.eclipse.jdt.internal.core.JavaModelManager.initializeContainer(JavaModelManager.java:2707) at org.eclipse.jdt.internal.core.JavaModelManager$11.run(JavaModelManager.java:2613) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1975) at org.eclipse.jdt.internal.core.JavaModelManager.initializeAllContainers(JavaModelManager.java:2653) at org.eclipse.jdt.internal.core.JavaModelManager.getClasspathContainer(JavaModelManager.java:1845) at org.eclipse.jdt.core.JavaCore.getClasspathContainer(JavaCore.java:2705) at org.eclipse.jst.common.internal.modulecore.ClasspathContainerVirtualComponent.<init>(ClasspathContainerVirtualComponent.java:47) at org.eclipse.jst.common.internal.modulecore.ClasspathContainerReferenceResolver.resolve(ClasspathContainerReferenceResolver.java:43) at org.eclipse.wst.common.componentcore.internal.StructureEdit.createVirtualReference(StructureEdit.java:289) at org.eclipse.wst.common.componentcore.internal.resources.VirtualComponent.getReferences(VirtualComponent.java:393) at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getHardReferences(J2EEModuleVirtualComponent.java:100) at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getReferences(J2EEModuleVirtualComponent.java:145) at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getReferences(J2EEModuleVirtualComponent.java:133) at org.eclipse.jst.j2ee.internal.web.classpath.WebAppLibrariesContainer.computeReferences(WebAppLibrariesContainer.java:100) at org.eclipse.jst.common.jdt.internal.classpath.FlexibleProjectContainer.computeClasspathEntries(FlexibleProjectContainer.java:183) at org.eclipse.jst.j2ee.internal.web.classpath.WebAppLibrariesContainer.computeClasspathEntries(WebAppLibrariesContainer.java:119) at org.eclipse.jst.common.jdt.internal.classpath.FlexibleProjectContainer.<init>(FlexibleProjectContainer.java:120) at org.eclipse.jst.j2ee.internal.web.classpath.WebAppLibrariesContainer.<init>(WebAppLibrariesContainer.java:58) at org.eclipse.jst.j2ee.internal.web.classpath.WebAppLibrariesContainerInitializer.initialize(WebAppLibrariesContainerInitializer.java:35) at org.eclipse.jdt.internal.core.JavaModelManager.initializeContainer(JavaModelManager.java:2707) at org.eclipse.jdt.internal.core.JavaModelManager$11.run(JavaModelManager.java:2613) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1975) at org.eclipse.jdt.internal.core.JavaModelManager.initializeAllContainers(JavaModelManager.java:2653) at org.eclipse.jdt.internal.core.JavaModelManager.getClasspathContainer(JavaModelManager.java:1845) at org.eclipse.jdt.core.JavaCore.getClasspathContainer(JavaCore.java:2705) at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:2645) at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:2783) at org.eclipse.jdt.internal.core.JavaProject.getResolvedClasspath(JavaProject.java:1915) at org.eclipse.jdt.internal.core.JavaProject.isOnClasspath(JavaProject.java:2193) at org.eclipse.jdt.internal.ui.BuildpathIndicatorLabelDecorator.getOverlay(BuildpathIndicatorLabelDecorator.java:47) at org.eclipse.jdt.internal.ui.BuildpathIndicatorLabelDecorator.decorate(BuildpathIndicatorLabelDecorator.java:34) at org.eclipse.ui.internal.decorators.LightweightDecoratorDefinition.decorate(LightweightDecoratorDefinition.java:269) at org.eclipse.ui.internal.decorators.LightweightDecoratorManager$LightweightRunnable.run(LightweightDecoratorManager.java:81) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.decorators.LightweightDecoratorManager.decorate(LightweightDecoratorManager.java:365) at org.eclipse.ui.internal.decorators.LightweightDecoratorManager.getDecorations(LightweightDecoratorManager.java:347) at org.eclipse.ui.internal.decorators.DecorationScheduler$1.ensureResultCached(DecorationScheduler.java:371) at org.eclipse.ui.internal.decorators.DecorationScheduler$1.run(DecorationScheduler.java:331) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) Reproducible: Always Steps to Reproduce: 1. Start Eclipse
Assigning to Jason for initial investigation, but this appears to need a simple null check, since getClasspathEntries() can return null.
Created attachment 176933 [details] patch for 3.2.2 This code may be going away with the fixes for classpath tagging currently in progress for 3.2.2, but until then, here is a simple NPE check to fix this.
checked into head for 3.2.2
approved