Extension Repositories
Last modified by Thomas Mortagne on 2024/04/04 09:55
Extension Manager support the following repositories:
Contrib connectors:
- Bintray: search and resolve extensions coming from Bintray repositories like JCenter
- PyPi: search, resolve and install Python extension located on https://pypi.org
- Npm registry: search, resolve and install (as webjars) Javascript packages coming from https://www.npmjs.com
Configuring Extension Repositories
You can control the list of Repositories to use by setting the extension.repositories property in your xwiki.properties file. Here's the documentation you'll find when editing xwiki.properties:
#-# Repositories to use when searching and downloading extensions.
#-# Repositories will be checked in the same order they have in this configuration file.
#-#
#-# The format is <id>:<type>:<url> where
#-# * id can be anything as long as there is only one
#-# * type is the type of the repository (maven, xwiki, etc.)
#-# * url is the URL or the root of the repository
#-#
#-# [Since 4.3] It's also possible to associate various properties to each repository.
#-# Here are the standard properties:
#-# * user: the user to use to authenticate to the repository
#-# * password: the password to use to authenticate to the repository
#-#
#-# And here those for "maven" repositories:
#-# * [Since 10.7RC1] checksumPolicy: what to do when checksum validation fail. Possible values are "fail", "warn"
#-# (the default) and "ignore"
#-# * [Since 13.0RC1] http.headers: Custom HTTP headers to be used when connecting to the maven repository.
#-#
#-# Here is an example:
# extension.repositories = privatemavenid:maven:http://host.com/private/maven/
# extension.repositories.privatemavenid.auth.user = someuser
# extension.repositories.privatemavenid.auth.password = thepassword
# extension.repositories.privatemavenid.http.headers.headername = headervalue
#-#
#-# Here's an example to add your local Maven Repository
## Note: Since this file is parsed by Velocity in the Maven Remote Resource plugin we need to escape the
## Apache Commons Configuration syntax for specifying the user.home system property!
#set ($userHome = '${sys:user.home}')
# extension.repositories = maven-local:maven:file://${userHome}/.m2/repository
#-#
#-# And an example to add the XWiki Maven Snapshot Repository
# extension.repositories = maven-xwiki-snapshot:maven:https://nexus-snapshots.xwiki.org/repository/snapshots
#-#
#-# When not set the following is taken (in this order):
# extension.repositories = maven-xwiki:maven:https://nexus.xwiki.org/nexus/content/groups/public
# extension.repositories = store.xwiki.com:xwiki:https://store.xwiki.com/xwiki/rest/
# extension.repositories = extensions.xwiki.org:xwiki:https://extensions.xwiki.org/xwiki/rest/
#-#
#-# To not have any repository enabled (including disabling default repositories) you can explicitly make this list
#-# empty:
# extension.repositories=
#-# Repositories will be checked in the same order they have in this configuration file.
#-#
#-# The format is <id>:<type>:<url> where
#-# * id can be anything as long as there is only one
#-# * type is the type of the repository (maven, xwiki, etc.)
#-# * url is the URL or the root of the repository
#-#
#-# [Since 4.3] It's also possible to associate various properties to each repository.
#-# Here are the standard properties:
#-# * user: the user to use to authenticate to the repository
#-# * password: the password to use to authenticate to the repository
#-#
#-# And here those for "maven" repositories:
#-# * [Since 10.7RC1] checksumPolicy: what to do when checksum validation fail. Possible values are "fail", "warn"
#-# (the default) and "ignore"
#-# * [Since 13.0RC1] http.headers: Custom HTTP headers to be used when connecting to the maven repository.
#-#
#-# Here is an example:
# extension.repositories = privatemavenid:maven:http://host.com/private/maven/
# extension.repositories.privatemavenid.auth.user = someuser
# extension.repositories.privatemavenid.auth.password = thepassword
# extension.repositories.privatemavenid.http.headers.headername = headervalue
#-#
#-# Here's an example to add your local Maven Repository
## Note: Since this file is parsed by Velocity in the Maven Remote Resource plugin we need to escape the
## Apache Commons Configuration syntax for specifying the user.home system property!
#set ($userHome = '${sys:user.home}')
# extension.repositories = maven-local:maven:file://${userHome}/.m2/repository
#-#
#-# And an example to add the XWiki Maven Snapshot Repository
# extension.repositories = maven-xwiki-snapshot:maven:https://nexus-snapshots.xwiki.org/repository/snapshots
#-#
#-# When not set the following is taken (in this order):
# extension.repositories = maven-xwiki:maven:https://nexus.xwiki.org/nexus/content/groups/public
# extension.repositories = store.xwiki.com:xwiki:https://store.xwiki.com/xwiki/rest/
# extension.repositories = extensions.xwiki.org:xwiki:https://extensions.xwiki.org/xwiki/rest/
#-#
#-# To not have any repository enabled (including disabling default repositories) you can explicitly make this list
#-# empty:
# extension.repositories=
If you have installed the Repository Application and you wish to add it as a repository you'd add:
extension.repositories=localxr:xwiki:http://localhost:8080/xwiki/rest/