Differences between revisions 3 and 4
Revision 3 as of 2009-07-15 09:55:01
Size: 3623
Editor: jrg
Comment:
Revision 4 as of 2009-07-15 10:17:41
Size: 3618
Editor: jrg
Comment:
Deletions are marked like this. Additions are marked like this.
Line 32: Line 32:
 * A number of directories, each a module, and/or module group.  * A number of directories, each a module or module group.

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)

  • README - A text file giving an overview of the DOMS project, including this directory explanation, as well as info on how the project is used and further developed by contributers.

  • 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 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)

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)