# Arguments Tab

You can easily test your bundle under different conditions by customizing the launching program and VM arguments on the Arguments Tab.

## Program and VM Arguments

Program arguments are values that the Equinox OSGi Framework expects and processes. For example, the -console argument enables the OSGi console allowing you to execute many commands such as installing, starting and stopping bundles. The -console argument is added by default to all newly-created Equinox OSGi Framework launch configurations.

VM arguments are typically values that change the behaviour of the Java Virtual Machine (JVM). For example, the -Xmx256M argument allows the Java heap to grow to 256MB.

The Equinox OSGi Framework is also configurable via many system properties which can be passed as VM arguments in the form: -DpropertyName=propertyValue. For example, -Dosgi.clean=true clears all data cached by the OSGi framework.

For a list of the program and VM arguments supported by the Equinox OSGi Framework, refer to the following documents:

- Running Eclipse
- Eclipse Runtime Options

If you would like the same set of program and VM arguments to be used for all your launch configurations, it is recommended that you use the Launching Arguments tab on the Window > Preferences... > Plug-in Development > Target Platform preference page to create a template that gets propagated into all newly-created launch configurations.

## Working Directory

The Working Directory specifies the directory in which the Equinox OSGi Framework executes (e.g. read and write files into the working directory, etc.). By default, the working directory is the root directory of the Eclipse installation; but, it can be configured by the user to be any writable directory they wish.