The following is a summary of the organization of the ONOS source tree. This section is not intended to be comprehensive list of all packages and files, but rather an overview to provide developers with a general idea of how ONOS is organized (think man (7) hier on UNIX).
ONOS is organized as multiple projects, each with its own pom.xml file so that it can be built with Maven. The pom.xml files are organized in a hierarchy, so that projects with shared dependencies and configurations can be built from a parent pom.xml file defined closer to the root.The root of the source tree contains the top-level pom file that builds all of the projects comprising ONOS.
Since the POM hierarchy reflects the logical organization of ONOS, it is used as the reference for this page.