This is the documentation of the Eclipse Equinox Framework.
The Equinox Launcher is the native executable and Java code that is responsible for starting the Equinox OSGi framework and Eclipse applications. The launcher provides a platform-specific executable (such as eclipse.exe on Windows or eclipse on Linux/Mac) along with native libraries that bootstrap the Java Virtual Machine and start the framework.
The Equinox Launcher consists of two main components:
The native executable is a platform-specific binary file:
eclipse.exeeclipseEclipse.app/Contents/MacOS/eclipseThis executable:
The launcher bundle (org.eclipse.equinox.launcher) contains the Java code that:
The launcher also includes platform-specific fragments that provide native libraries for JNI integration.
The launcher accepts various command-line arguments to control its behavior:
-application <id>: Specifies the application to run-configuration <location>: Specifies the configuration area location-console [port]: Opens the OSGi console (optionally on a specific port)-consoleLog: Logs console output to a file-data <location>: Sets the workspace location-debug [options file]: Enables debug mode with optional debug options-dev [entries]: Enables development mode with optional classpath entries-clean: Clears cached data before starting-initialize: Initializes the configuration without starting the application-vm <path>: Specifies the Java VM to use-vmargs: All arguments after this are passed directly to the JVM-nosplash: Disables the splash screen-showlocation: Shows the workspace location in the window titleThe eclipse.ini file (or Eclipse.ini on macOS) is located next to the launcher executable and contains default command-line arguments. Each argument should be on a separate line:
-startup
plugins/org.eclipse.equinox.launcher_<version>.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.<ws>.<os>.<arch>_<version>
-product
org.eclipse.platform.ide
-showsplash
org.eclipse.epp.package.common
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=17
-Xms256m
-Xmx2048m
The config.ini file in the configuration area defines:
Example:
osgi.bundles=org.eclipse.equinox.common@2:start,org.eclipse.update.configurator@3:start
osgi.bundles.defaultStartLevel=4
eclipse.product=org.eclipse.platform.ide
The launcher uses several important locations:
The directory containing the Eclipse executable. This location is read-only in typical installations.
Contains configuration data including:
config.ini: Framework configurationorg.eclipse.equinox.app: Application state.settings: Platform preferencesDefault: <install>/configuration or <user.home>/.eclipse/<product-id>_<version>/configuration
The user’s workspace containing projects and workspace-scoped settings.
Default: Prompted on first launch or specified via -data
Contains user-specific data shared across workspaces.
Default: <user.home>/.eclipse
For information on building the native launcher executable and libraries from source, see the README in the executable feature.