Project Dependencies
Projects declare dependencies on other projects by name in their project.properties file. The project.properties file should contain a comma-seperated list of project names in the property "compile.dependencies". When a project is build, the "dependencies" task (which can be found within the imbuild/ant-tasks project) reads this list of dependencies and then walks the entire dependency hierarchy building an ordered list of projects depended upon. Each project in this list is built (by calling the jar target with an antcall task) and a class-path and filesets are produced along the way. The ids produced are as follows:
- project.compile.path
- This path is comprised of all the compiled classes and libraries of dependencies.
- project.compile.path.fileset
- All of project.compile.path as a FileSet.
- project.execute.path
- Like project.compile.path but includes artifacts of dependencies rather than class file directories.
- project.execute.path.fileset
- project.execute.path as a FileSet
- project.artifact.fileset
- Just the artifacts of dependencies.
See also InterMineBuildSystem
