To override the built-in central and snapshot repositories of Maven, you need to ensure that Artifactory is correctly configured so that no request is ever sent directly to them.
Using the automatically generated file as a template
You can use the automatically generated settings.xml
file as an example when defining the repositories to use for resolving artifacts.
To do so, you need to insert the following into your parent POM or settings.xml
(under an active profile):
<repositories> <repository> <id>central</id> <url>http://[host]:[port]/artifactory/libs-release</url> <snapshots> <enabled>false</enabled> </snapshots> </repository> <repository> <id>snapshots</id> <url>http://[host]:[port]/artifactory/libs-snapshot</url> <releases> <enabled>false</enabled> </releases> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>central</id> <url>http://[host]:[port]/artifactory/plugins-release</url> <snapshots> <enabled>false</enabled> </snapshots> </pluginRepository> <pluginRepository> <id>snapshots</id> <url>http://[host]:[port]/artifactory/plugins-snapshot</url> <releases> <enabled>false</enabled> </releases> </pluginRepository> </pluginRepositories>
Using the Default Global Repository
You can configure Maven to run with the Default Global Repository so that any request for an artifact will go through Artifactory which will search through all of the local and remote repositories defined in the system.
We recommend that you fine tune Artifactory to search through a more specific set of repositories by defining a dedicated virtual (or local) repository, and configure Maven to use that to resolve artifacts instead.