7

I recently upgraded my Mac Force.com Eclipse IDE to V36 because I liked the Windows version V36. (Separate client engagements in case you were wondering)

When I click Run Configurations in the Eclipse Toolbar, and try to select a Test Class in the Test tab, I get a Java NPE. Same result if I click on an existing configuration with just a Project assigned to it.

enter image description here

Eclipse and Force.com IDE are all up to date enter image description here

Eclipse Log shows this error:

!ENTRY com.salesforce.ide.core 0 0 2016-05-17 10:54:58.883
!MESSAGE DEBUG [2016-05-17 10:54:58,882] (BaseContextHandler.java:getBean:181) - Got bean of class 'com.salesforce.ide.core.model.Component$$EnhancerByCGLIB$$6361ae6c' for id 'ApexClass'


!ENTRY com.salesforce.ide.core 0 0 2016-05-17 10:54:58.883
!MESSAGE DEBUG [2016-05-17 10:54:58,883] (ComponentFactory.java:getComponentByComponentType:516) - Found component of type ApexClass for id 'ApexClass' and object type 'ApexClass'


!ENTRY org.eclipse.jface 4 2 2016-05-17 10:54:58.903
!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.jface".
!STACK 0
java.lang.NullPointerException
    at com.salesforce.ide.apex.internal.core.ApexTestsUtils.filterSourcesByType(ApexTestsUtils.java:325)
    at com.salesforce.ide.apex.internal.core.ApexTestsUtils.filterSourcesByClass(ApexTestsUtils.java:272)
    at com.salesforce.ide.apex.internal.core.ApexTestsUtils.findTestClassesInProject(ApexTestsUtils.java:84)
    at com.salesforce.ide.ui.views.runtest.TestConfigurationTab.buildTestsForProject(TestConfigurationTab.java:520)
    at com.salesforce.ide.ui.views.runtest.TestConfigurationTab.initializeFrom(TestConfigurationTab.java:676)
    at org.eclipse.debug.ui.AbstractLaunchConfigurationTabGroup.initializeFrom(AbstractLaunchConfigurationTabGroup.java:86)
    at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupWrapper.initializeFrom(LaunchConfigurationTabGroupWrapper.java:194)
....

What it looks like is that in attempting to get a list of Apex classes so they can be filtered in the Test tab, an NPE occurs between jFace and ApexTestUtils. No doubt I have some config issue but what might it be? Previous install was V33 of Force.com IDE on the same Eclipse layer and that worked fine (of course, there was no Run Configurations in V33)

  • 1
    Possibly this line github.com/forcedotcom/idecore/blob/200.eclipse/…. File (resource) res with no file extension causes the problem? That class seems to have been replaced in the current head... – Keith C May 17 '16 at 20:56
  • @KeithC - Hmm, an interesting hypothesis and why I didn't go look at idecore for that line# is a personal failing of mine :-( . I decided to start from scratch but with Eclipse Mars and am adding projects back one at a time until the error occurs, if at all. Stay tuned. – cropredy May 17 '16 at 21:45
  • Any Update on this - even I am getting the same error? :( I m using Force - 36, Eclipse Neon, Java 1.8 – user3466111 Sep 3 '16 at 9:13
0

What worked for me was to make sure eclipse only loaded certain objects and not choosing the default. I deleted my workspace folder. Did a new force.com ide project and instead of letting the default option I chose the option 'Selected metadata components' and then from that list I only chose a few objects. Classes, components, pages and triggers. This extremely limited the amount of ojbects it had to parse through to generate the list of test classes and now it works. I believe there was something coming down from a managed package or something that it was unable to cycle through to look for test classes and caused the Null Pointer Exception error.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.