4.10 Application Versioning
Prev | 4. Developing Applications | Next

## 4.10 Application Versioning

In much the same way that individual OSGi bundles can be versioned, Virgo allows applications to be versioned. How exactly you do this depends on how you have packaged the application:

- If you package your application using a PAR, you version the application by using the `Application-Version` header in the `MANIFEST.MF` file of the PAR file.
- If you use a plan to describe the artifacts that make up your application, you version it by using the `version` attribute of the `<plan>` root element of the plan’s XML file.
- If your application consists of a single bundle, you version it in the standard OSGi way: by using the `Bundle-Version` header of the `MANIFEST.MF` file of the bundle.

Virgo uses an application’s version to prevent clashes when multiple versions of the same application are deployed at the same time. For example, the application trace support described in Section 4.9, “Application Trace”, includes the application’s name and version in the file path. This ensures that each version of the same application has its own trace or logging file.

Prev | Up | Next
4.9 Application Trace | Home | 5. Migrating to OSGi