# Packaging

We had a brief discussion on the `.beans` archive in examples. In this chapter, we will go into more depth on the packaging topic. As we will see later in standalone, the packaging is more of a convention rather than a requirement. The convention is recommended since it allows "deployments" to be used both standalone and inside JBoss AS.

The basic structure of microcontainer deployment is a `.beans` file (see below). The `.beans` can also be unpacked in a directory structure that looks the jar file. It contains a `META-INF/jboss-beans.xml` to describe what you want it to do. The contents of this xml file are described in basics. Finally, the `.beans` archive contains the classes and any resources just like any other jar file.

    example.beans/
    example.beans/META-INF/jboss-beans.xml
    example.beans/com/acme/SomeClass.class

If you want to include a `.beans` file in an `.ear` deployment, you will need to reference in `META-INF/jboss-app.xml`.

    <?xml version='1.0' encoding='UTF-8'?>

    <!DOCTYPE jboss-app
      PUBLIC  "-//JBoss//DTD J2EE Application 1.4//EN"
              "http://www.jboss.org/j2ee/dtd/jboss-app_4_0.dtd"
    >

    <jboss-app>

       <module><service>example.beans</service></module>

    </jboss-app>