From the perspective of the build system, a project is a directory containing source code which produces one or more artifacts. A project may have dependencies on the artifacts of other projects or third-party libraries.
A project which exists only as a part of another project. For example, JTA is a component of the application server.
A requirement that a library or artifact must be available during compilation of a given project. This term can also refer to the artifact or library itself.
The compiled product of a project. Generally, artifacts are JAR files. The Application Server project will have a dependency on artifacts produced by the MicroContainer project.
A JAR file which is not generated from source. Many projects will have a dependency on the log4j library.