Differences between revisions 6 and 7
Revision 6 as of 2009-08-19 13:01:19
Size: 3783
Editor: jrg
Comment:
Revision 7 as of 2009-08-24 10:53:12
Size: 4025
Editor: jrg
Comment:
Deletions are marked like this. Additions are marked like this.
Line 17: Line 17:
 * {{{build-includes.xml}}} - Generally useful ant code
 * {{{build-webservices.xml}}} - Webservice-related ant code
 * {{{build-includes.xml}}} - Generally useful ant code. This should be the same for every sourceforge package.
 * {{{build-webservices.xml}}} - Optional - webservice-related ant code. This should be the same for every sourceforge package.
Line 51: Line 51:
 * {{{build-webservices.xml}}} - Webservice-related ant code. This should be the same for every sourceforge package.

Directory Layout

This page describes the directory layout in each of the Subversion trunks (separate IDEA projects) that are part of the Subversion repository of the Sourceforge DOMS project.

Top level

The top level directory has the following:

  • <IDEAprojectname>.ipr - The IDEA project file

  • <IDEAprojectname>.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 this IDEA 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.xml - Generally useful ant code. This should be the same for every sourceforge package.

  • build-webservices.xml - Optional - webservice-related ant code. This should be the same for every sourceforge package.

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

  • <IDEAprojectname>.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

  • build-webservices.xml - Webservice-related ant code. This should be the same for every sourceforge package.

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)