IProject[] projects = ResourcesPlugin.getWorkspace( ).getRoot( ) .getProjects( );  String projectString = ""; for ( int i = 0; i < projects.length; i++ ) { IProject proj = projects[i]; projectString += proj.getName( ) + ScriptExecutor.PROPERTYSEPARATOR; }  String projectClassPaths = ClasspathUtil .getAllProjectPaths( projectString );  System.setProperty( ScriptExecutor.WORKSPACE_CLASSPATH_KEY, projectClassPaths );
String projectClassPaths = WorkspaceClasspathManager.getClassPath( ); System.setProperty( WORKSPACE_CLASSPATH_KEY, projectClassPaths );
	public synchronized static void start( String webappName, String pluginId,			IPath path ) throws CoreException	{		if ( !applicationsStarted )		{			// Search current workspace, add to classpath			IProject[] projects = ResourcesPlugin.getWorkspace( ).getRoot( )					.getProjects( );			String projectString = "";			for ( int i = 0; i < projects.length; i++ )			{				IProject proj = projects[i];				projectString += proj.getName( )						+ ScriptExecutor.PROPERTYSEPARATOR;			}			String projectClassPaths = ClasspathUtil					.getAllProjectPaths( projectString );			System.setProperty( ScriptExecutor.WORKSPACE_CLASSPATH_KEY,					projectClassPaths );			IPath webappPath = getWebappPath( pluginId, path );			// we get the server before constructing the class loader, so			// class loader exposed by the server is available to the webapps.			IWebappServer server = AppServerWrapper.getInstance( )					.getAppServer( );			server.start( webappName, webappPath, new PluginClassLoaderWrapper(					pluginId ) );			applicationsStarted = true;		}	}