Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[platform-debug-dev] New Launch Config API Feedback

I've just converted the JUnit launch config to the new API (it didn't make
it into the build
of yesterday, sorry). I like the improvements a lot. The added life cycle
support simplifies
the client code significantly. In addition, support for headless launch
configs is
goodness as well.

Here is some feedback:
*     the JavaLaunchConfigurationTab is not API so I needed to
      duplicate it. Most of the code in JavaLaunchConfigurationTab
      isn't Java specific and would be generally useful when implementing
      launch config tabs. I'd suggest:
      *     we add an AbstractLaunchConfigurationTab that provides
            the non Java standard behaviour. Having to call setControl
            to make the base class know about the created contents
            is unhappy (I forgot to call it and had to debug why the
            page is empty). However, it is consistent with the WizardPage.

      There will several Java based launch configs (e.g. for applets,
      servlets) and providing more reusable standard behaviour
      would be appropriate. I therefore suggest:
      *     add an AbstractJavaLaunchConfigurationTab for
            Java based launch configurations.

*     I had to fully duplicate the JRE handling code. This more than
      a Java application launcher should have to copy. Moving
      the JRE to the Environment page would allow most Java launch
      configs to reuse th he code related to the JRE setting. An
alternative is that
      we provide a base tab from which clients can inherit the JRE handling
      logic.

*     For the JUnit launch config I'd like to disable the switching to the
run-time
      page by default in the launch configuration. There is no way to do
this. I can
      set the perspective attributes to null in the setDefault method
      of the main tab, but the Common tab will override it according
      to the preferences. Changing the preference to not switch
      to the debug perspective when running would also make
      sense.

*     The Environment tab class:
            org.eclipse.jdt.internal.debug.ui.launcher.JavaEnvironmentTab
      should be promoted to API, so that others can contribute it without
      having to refer to an internal class name.

I've also found some issues with the existing Java launching support and
I've filed bugs for them:
http://dev.eclipse.org/bugs/show_bug.cgi?id=10838
http://dev.eclipse.org/bugs/show_bug.cgi?id=10839

--erich




Back to the top