Differences between revisions 1 and 2
Revision 1 as of 2008-02-20 09:36:07
Size: 2636
Comment:
Revision 2 as of 2009-07-14 12:00:31
Size: 3474
Editor: jrg
Comment:
Deletions are marked like this. Additions are marked like this.
Line 7: Line 7:
In the top level directory we have the following: The top level directory has the following:
Line 11: Line 11:
 * {{{LICENSE}}} - A text file containing the Apache License version 2.0
 * {{{NOTICE}}} - A text file containing attribution notices (see Apache 2.0 License)
 * {{{qascan.xml}}} - Configuration file for automated code QA checking
 * {{{build.xml}}} - Project ant targets
 * {{{build.properties}}} - Project ant target properties
 * {{{build-includes}}} - Generally useful ant code
 * {{{build-webservices}}} - Webservice-related ant code
Line 14: Line 21:
 * {{{build.xml}}} - Project ant targets
 * {{{build.properties}}} - Project ant target properties
 * One directory per module, named after the module, module names are lower case
 * {{{modules/}}} - A folder containing any number of modules and/or module groups
Line 18: Line 23:
For each module we have the following: And '''not''' in SVN:
 * {{{doms.iws}}} - IDEA workspace configuration file
Line 20: Line 26:
 * ''blah''{{{.iml}}} The IDEA module file, module names are lower case
== Module groups ==

A module group is a directory with name ''<modulegroupname>'' in lower case, containing the following:
 * ''<modulegroupname>''{{{.iml}}} - The IDEA module group file.
 * A number of directories, each a module, and/or module group.


== Modules ==

Each module, with name ''<modulename>'', is contained in a directory named after the module - module names are in lower case.
This directory contains the following:

 * ''<modulename>''{{{.iml}}} - The IDEA module file, module names are lower case

Directory Layout

This page describes the directory layout in our Subversion repository

Top level

The top level directory has the following:

  • doms.ipr - The IDEA project file

  • doms.iml - The IDEA virtual project module file

  • LICENSE - A text file containing the Apache License version 2.0

  • NOTICE - A text file containing attribution notices (see Apache 2.0 License)

  • qascan.xml - Configuration file for automated code QA checking

  • build.xml - Project ant targets

  • build.properties - Project ant target properties

  • build-includes - Generally useful ant code

  • build-webservices - Webservice-related ant code

  • docs/ - A folder for general project documentation - anarchy governs this directory

  • lib/ - A folder for project libraries (see the [#lib lib/] section below)

  • bin/ - Scripts for the project

  • modules/ - A folder containing any number of modules and/or module groups

And not in SVN:

  • doms.iws - IDEA workspace configuration file

Module groups

A module group is a directory with name <modulegroupname> in lower case, containing the following:

  • <modulegroupname>.iml - The IDEA module group file.

  • A number of directories, each a module, and/or module group.

Modules

Each module, with name <modulename>, is contained in a directory named after the module - module names are in lower case. This directory contains the following:

  • <modulename>.iml - The IDEA module file, module names are lower case

  • data/ - An optional folder for data belonging to the module - anarchy reigns

  • docs/ - A folder for module documentation - anarchy governs this directory

  • lib/ - A folder for module libraries (see the [#lib lib/] section below)

  • config/ - Folder with module configuration files

  • src/ - Module java source

  • test/ - Unit tests for java source

  • test/data - Data used by unit tests

  • bin/ - Scripts for the module

  • build.xml - Module ant targets

  • build.properties - Module ant target properties

And not in SVN:

  • classes/ - Folder for generated class files

  • classes-test/ - Folder for generated class files for junit test cases

  • apidocs/ - Folder for generated javadoc

  • dist/ - Folder with generated Release packages (see the [#dist dist/] section below)

TODO: Where to put generated jar files?

Anchor(lib)

lib/

All jar files must have version numbers (i.e. junit-4.0.1.jar rather than junit.jar)

Subdirectories to lib:

  • apidocs/ - contains zipfiles with apidocs for libs - e.g. junit-4.0.1-apidocs.zip

  • src/ - contains zipfiles with sources for libs - e.g. junit-4.0.1-src.zip

  • license/ - contains licenses for libs - e.g. junit-4.0.1-license.txt or junit-4.0.1-license.html

Each lib must be accompanied by apidocs, src and license. If there are more than one licence-file belonging to a library, the files should be zipped - e.e. junit-4.0.1-license..

Furthermore .jar files compiled by the module should also go in the lib/ directory.

Anchor(dist)

dist/

Contains generated zip-files (from ant target), see [:ModuleReleaseStructure: module release structure] and [:Ant: Ant] guidelines.

Directory layout (last edited 2010-10-27 11:50:12 by abr)