As I said, it's working well. I'm able to run the app, debugging it.
It's way simpler than it was before !
For those of you running on a Mac, though, you may experiment some
difficulties starting a LDAP server from Studio, getting such an error :
Unable to start server 'ApacheDS 2.0.0'
java.lang.NullPointerException
at
org.apache.directory.studio.ldapservers.apacheds.v200.ApacheDS200LdapServerAdapter.launchApacheDS(ApacheDS200LdapServerAdapter.java:210)
at
org.apache.directory.studio.ldapservers.apacheds.v200.ApacheDS200LdapServerAdapter.start(ApacheDS200LdapServerAdapter.java:179)
at
org.apache.directory.studio.ldapservers.jobs.StartLdapServerRunnable.run(StartLdapServerRunnable.java:108)
at
org.apache.directory.studio.common.core.jobs.StudioJob.run(StudioJob.java:83)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
java.lang.NullPointerException
The NPE is due to some unitialised JVM :
public static ILaunch launchApacheDS( LdapServer server )
throws Exception
{
// Getting the default VM installation
IVMInstall vmInstall = JavaRuntime.getDefaultVMInstall();
// Creating a new editable launch configuration
ILaunchConfigurationType type =
DebugPlugin.getDefault().getLaunchManager()
.getLaunchConfigurationType(
IJavaLaunchConfigurationConstants.ID_JAVA_APPLICATION );
ILaunchConfigurationWorkingCopy workingCopy = type.newInstance(
null, server.getId() );
// Setting the JRE container path attribute
workingCopy.setAttribute(
IJavaLaunchConfigurationConstants.ATTR_JRE_CONTAINER_PATH, vmInstall
<---- vmInstall is null here.
.getInstallLocation().toString() );
JavaRuntime.getDefaultVMInstall() returns null, unless you add the
*org.eclipse.jdt.launching.macosx plugin* in the RCP application, as
explained on http://www.eclipse.org/forums/index.php/t/157013/.
I must admit it's a bit cryptic, I was expecting this plugin to be
associated with the JDT plugin itself.
Otherwise, all is running.
Stefan, this is a great job you did !
Emmanuel