Bug 318821 If DS is not included in the launch config a warning should be issued
If the ds bundle is not in the launch config a NPE is created the first time a service is used. Tom Schindl suggested on the e4 mailing list that the existance of the ds bundles should be checked at start time and a warning should be written if they are not included in the launch config.
bundles/org.eclipse.e4.ui.workbench.swt/src/org/eclipse/e4/ui/internal/workbench/swt/E4Application.java
import org.eclipse.e4.ui.workbench.IExceptionHandler;
import org.eclipse.e4.ui.workbench.IModelResourceHandler;
import org.eclipse.e4.ui.workbench.lifecycle.PostContextCreate;
import org.eclipse.e4.ui.workbench.lifecycle.ProcessAdditions;
import org.eclipse.e4.ui.workbench.lifecycle.ProcessRemovals;
import org.eclipse.e4.ui.workbench.modeling.EPartService;
import org.eclipse.e4.ui.workbench.swt.internal.copy.WorkbenchSWTMessages;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.equinox.app.IApplication;
import org.eclipse.equinox.app.IApplicationContext;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.window.IShellProvider;
import org.eclipse.osgi.service.datalocation.Location;
import org.eclipse.osgi.util.NLS;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.MessageBox;
import org.eclipse.swt.widgets.Shell;
import org.w3c.dom.css.CSSStyleDeclaration;
/**
 *
 */
public class E4Application implements IApplication {
	private static final String PLUGIN_ID = "org.eclipse.e4.ui.workbench.swt"; 
	
	public static final String METADATA_FOLDER = ".metadata"; 
	private static final String VERSION_FILENAME = "version.ini"; 
	private static final String WORKSPACE_VERSION_KEY = "org.eclipse.core.runtime"; 
	private static final String WORKSPACE_VERSION_VALUE = "2";