|Home > Apache Geronimo Knowledge Base > Index > FAQ > Geronimo developer questions > What on Earth is a GBean? Why are they different from MBeans?|
A GBean is a class or object that the Geronimo container can manage the lifecycle of. So, for example, when you deploy parts to a container you want to start and stop them, and they have dependencies. For example, Bean A can only start up when Bean B is ready to go because Bean B provides services that Bean A needs. So, GBeans are Geronimo's way of packaging up things that need to be managed, and can express dependencies. The GBeans architecture lies at the heart of Geronimo's power to enable developers to move or work with their existing J2EE assets, whether open source or commercial.
GBeans are designed to let you take things you have, put a GBean wrapper around them, and use that to bridge the JSR 77 lifecycle requirements (which GBeans support via GBeanLifecycle interface). You can take anything lying around and get it to work with GBeans. In addition, the GBeans will let developers bring other existing open source projects into the Geronimo orbit.
For more information about GBeans see Apache Geronimo Development