From version < 6.4 >
edited by Vincent Massol
on 2019/10/07 10:42
To version < 7.1 >
edited by Thomas Mortagne
on 2019/10/07 11:37
< >
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -xwiki:XWiki.VincentMassol
1 +xwiki:XWiki.ThomasMortagne
Content
... ... @@ -4,7 +4,7 @@
4 4  
5 5  = Optional dependencies =
6 6  
7 -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:
7 +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:
8 8  
9 9  * if the optional dependency install plan fail the extension is installed without it
10 10  * if the optional dependency is uninstalled it won't uninstall the extension
... ... @@ -11,7 +11,7 @@
11 11  * if the optional dependency is missing at startup it won't make the extension invalid
12 12  
13 13  {{info}}
14 -Since 11.7RC1, in the context of Maven, this applies only to XWiki extensions by default (those with group ids starting with "org.xwiki" or "com.xwiki") or those explicitly indicating how to deal with optional properties. See [[custom Maven properties>>Extension.Extension Module.Repositories.Maven||anchor="HCustomproperties"]] for more details.
14 +Since 11.7RC1, in the context of Maven repositories, this apply only to extensions using the custom Maven property ##xwiki.extension.optionalIncluded## with ##true## to avoid going against Maven default behavior (for retro compatibility reasons it's ##true## by default for grouIds prefixes known to be XWiki often be extensions: "org.xwiki" and "com.xwiki"). See [[custom Maven properties>>Extension.Extension Module.Repositories.Maven||anchor="HCustomproperties"]] for more details.
15 15  {{/info}}
16 16  
17 17  = Managed dependencies =

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:

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, in the context of Maven, this applies only to XWiki extensions by default (those with group ids starting with "org.xwiki" or "com.xwiki") or those explicitly indicating how to deal with optional properties. See custom Maven properties for more details.

Since 11.7RC1, in the context of Maven repositories, this apply only to extensions using the custom Maven property xwiki.extension.optionalIncluded with true to avoid going against Maven default behavior (for retro compatibility reasons it's true by default for grouIds prefixes known to be XWiki often be extensions: "org.xwiki" and "com.xwiki"). See custom Maven properties 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