The topic of this article may not meet Wikipedia's notability guidelines for products and services. (November 2010) (Learn how and when to remove this template message)
|Developer(s)||Eclipse Foundation, SpringSource|
3.7.2.RELEASE / July 27, 2017
|License||GPL license, to the Eclipse Public License|
Virgo is an open source, OSGi-based, Java application server. Virgo supports the deployment of OSGi bundles and unmodified Java web applications as well as OSGi-influenced Shared Libraries WARs and Shared Services WARs.
Virgo is based on the Equinox OSGi implementation, part of the Eclipse project. A few different distributions of Virgo exist: Virgo Nano, Virgo Kernel, Virgo Server for Apache Tomcat (embedding the Apache Tomcat servlet container) and Virgo Jetty Server (embedding the Eclipse Jetty servlet container). Virgo Server for Apache Tomcat is the primary distribution for OSGi development.
The SpringSource dm Server was originally announced as the SpringSource Application Platform on April 30, 2008. Version 1.0 of the SpringSource dm Server was released September 30, 2008. Version 2.0 was released January 12, 2010.
In 2013 SpringSource contributions to Eclipse Virgo came to an end and the team members got reallocated to different projects. In absence of a lead, the Virgo project was about to be archived until Florian Waibel stepped in as the new project lead.
Eclipse Virgo is supported by a set of Eclipse plug-ins called Virgo Tools which allow using the Eclipse IDE for the development and testing of OSGi applications against an embedded Virgo test environment. The tools support hot deploy of individual bundles and allow deployment of plan files.
- Web admin console - deploy and manage artifacts, examine diagnostic dumps, and explore bundle wiring, either in a live system or offline following a resolution failure
- Gogo shell - manage Virgo and deployed artifacts using a command line shell accessed via ssh or telnet
- Plans - define the artifacts that compose an application, optionally making the application atomic to tie the artifact lifecycles together, and scoped to isolate the application from other applications
- Provisioning - automatically supply the dependencies of an application including bundles, plans, plan archives (PARs), and configurations, from both local and remote repositories
- Web container - supports vanilla WAR files, with all their dependencies in WEB-INF/lib, and Web Application Bundles, that import their dependencies via OSGi manifest metadata, via the reference implementation of the OSGi Web Container specification, based on embedded Apache Tomcat and configured using the standard Tomcat server.xml
- User region - isolates the kernel from user-installed applications and enables administrators to focus on application artifacts and their dependencies without seeing those of the kernel as well
- Spring – Virgo 3.6.2 packages Spring 3.1.x, Virgo 3.7 packages Spring 4.2.x
- Hot deployment - deploy artifacts to Virgo by copying them into the pickup directory, either in archive or exploded form, as an alternative to deploying via the admin console or shell
- Logging - via embedded LogBack with a rich set of appenders available out of the box
- JMX management, accessed via the admin console, the shell, the Virgo IDE tooling, or directly via a JMX client such as JConsole
- Virgo 3.7.2.RELEASE is available
- Virgo Programmer Guide, section 3.1
- Virgo Deliverables
- SpringSource dm Server product page
- Eclipse Virgo home page
- Introducing the SpringSource Application Platform
- SpringSource Announces General Availability of SpringSource dm Server
- dm Server 2.0.0 released
- Eclipse Virgo Released
- Mailing list message about lead step down
- Forum post about project archival
- InfoQ interview with Florian Waibel
- Virgo Tools Wiki page
- Virgo Tools documentation