Dependencies

Version 4.1 by Thomas Mortagne on 2019/09/27 13:18

Extensions can define dependencies. Those will automatically be installed by Extension Manager when installing the extension. It's also a good way to make sure the extension is installed on the right version of XWiki.

See also Maven repository handler documentation to have more details on how exactly to define dependencies in the Maven build.

Optional dependencies

Since 9.6RC1 it's possible to indicate that a dependency is optional. This means that Extension Manager will install all of them by default but optional dependencies won't have any impact on the validity of the extension:

  • if the optional dependency install plan fail the extension is installed without it
  • if the optional dependency is uninstalled it won't uninstall the extension
  • if the optional dependency is missing at startup it won't make the extension invalid

Since 11.7RC1 this apply only to XWiki extensions by default (those with group id starting with "org.xwiki" or "com.xwiki") or those using the property "xwiki.extension.optionalIncluded". See Maven for more details.

Managed dependencies

Since 8.1, Extension Manager support the concept of managed dependencies.

Its the same idea than Maven's <dependencyManagement> element. It allows the following:

  • indicate the version or other properties associated to a dependency in managed dependencies and just indicate the id in the actual dependencies
  • overwrite the version or other properties associated to any corresponding transitive dependency

Get Connected