Archives

Apache Maven dependency management by Jonathan Lalou PDF

compile Provided Dependencies with provided are required to build and test. They are also required to run, but should not exported, because the dependence will be provided at runtime, for instance, by a servlet container or an application server.

As such, they are required to build, test, and run, and are not propagated. The main difference is that system dependencies are not retrieved from a repository but from a hard written address on the filesystem. When scope value is system, then an additional tag is mandatory: systemPath, which points at the location of the needed archive. jar As in the preceding example, most of the time system dependencies are needed to process or generate sources. Among the use cases is the generation of code thanks to annotations.