As mentioned previously, a plugin is merely a project with an structure similar to a Griffon application with the addition of a contained plugin descriptor. However when installed, the structure of a plugin differs slightly. For example, take a look at this plugin directory structure:

+ griffon-app
     + controllers
     + models
     + views
     …
 + lib
 + src
     + main
     + cli
     + doc

Essentially when a plugin is installed into a project, the contents of the zip file will go into a directory such as plugins/example-1.0/. Plugin contents will not be copied into the main source tree. A plugin never interferes with a project's primary source tree.