To foster standardization we use the following project layout. This extends the standard directory layout described by Maven.
The following source main folders are defined.
Location | Description |
---|---|
src/main | Application/Library sources |
src/test | Test sources that define tests on the application/library sources |
src/etc | Project configuration files for build and administration. Contains files that are not deployed. |
src/site | Site documentation of the project |
Within each source main folder the following sub folders may be found.
Location | Description |
---|---|
[language] | Sources written in the given language, such as java, groovy, or bash in the case of main and test or xdoc, fml or apt in the case of site. |
resources | Resources to be available on the class path |
filters | Filter files for resources |
assembly | Assembly descriptors |
config | Configuration files |
Location | Description |
---|---|
src/main/java | Application/Library Java sources |
src/main/groovy | Application/Library Groovy sources |
src/main/sql | SQL sources |
src/main/resources | Application/Library resources to be available on the class path |
src/main/resources/META-INF | The META-INF folder in Java archives (JAR) to be available on the class path |
src/main/filters | Filter files for application/library resources |
src/main/assembly | Assembly descriptors |
src/main/config | Application/Library configuration files (not available on the class path) |
src/main/webapp | Web application resources |
src/main/webapp/WEB-INF | Web application WEB-INF resources |
src/test/java | Test Java sources |
src/test/groovy | Test Groovy sources |
src/test/resources | Test resources to be available on the class path |
src/test/filters | Filter files for test resources |
src/test/config | Test configuration files (not available on the class path) |
src/etc | Text configuration files like License text templates |
src/etc/xcf | Gimp files that are the source to images to be exported to the main, test, and site and resources folders |
src/site/resources/css | CSS files used by the site |
src/site/resources/images | Images to be shown in the site |
src/site/resources/images/logos | Logos and favicons to be shown in the site |
src/site/resources/projectdoc | Resources referenced to by project doc files |
src/site/fml | FAQs for the site documentation in FML format |
src/site/sdoc | Site documentation in SDoc format |
src/site/xdoc | Site documentation in XDoc format |
The following resources provide helpful information about standard directory layouts.