# Startup

###### Identifier:

org.eclipse.ui.startup

###### Since:

2.0

###### Description:

This extension point is used to register plugins that want to be activated on startup. The class given as the attribute on the startup element must implement the interface `org.eclipse.ui.IStartup`. Once the workbench is started, the method earlyStartup() will be called from a separate thread. If the startup element has a class attribute, the class will be instantiated and earlyStartup() will be called on the result. Otherwise, this method will be called on the plug-in class. Do not specify the plug-in class as the value of the class attribute, or it will be instantiated twice (once by regular plug-in activation, and once by this mechanism). If the extension does not provide a class as an attribute on the startup element, the plug-in's activator (plug-in class) must implement `org.eclipse.ui.IStartup`. Note that this form is deprecated and should no longer be used. Its functioning relies on the availability of the org.eclipse.core.runtime.compatibility plug-in and the org.eclipse.core.runtime.compatibility.registry fragment. Plugins that provide an extension to this extension point are listed in the workbench preferences and the user may disable any plugin from early startup.

###### Configuration Markup:

<!ELEMENT extension (startup*)>

<!ATTLIST extension

point CDATA #REQUIRED

id CDATA #IMPLIED

name CDATA #IMPLIED>

- point - a fully qualified identifier of the target extension point
- id - an optional identifier of the extension instance
- name - an optional name of the extension instance

<!ELEMENT startup EMPTY>

<!ATTLIST startup

class CDATA #IMPLIED>

- class - a fully qualified name of the class that implements `org.eclipse.ui.IStartup`. If not specified, the plug-in class is used. Do not specify the plug-in class as an explicit value, or it will be instantiated twice (once by regular plug-in activation, and once by this mechanism). Since release 3.0.

###### Examples:

Following is an example of a startup extension:

       <extension point="org.eclipse.ui.startup">
         <startup class="org.eclipse.example.StartupClass"/>
       </extension>

###### API Information:

See interface `org.eclipse.ui.IStartup`.

Copyright (c) 2002, 2006 IBM Corporation and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html