What is a transitive Maven dependency?
Your assumption is correct.
There are two types of Maven dependencies:
Direct: These are dependencies defined in your
pom.xml
file under the<dependencies/>
section.Transitive: These are dependencies that are dependencies of your direct dependencies.
Dependencies with provided
scope are meant to:
- Either be excluded from the final artifact (for example, for
war
files you would not want to includeservlet-api
,servlet-jsp
, etc) - Or overriden -- where the project that inherits these defines a version and/or overrides the scope