I have a private Maven repository. It's defined in pom.xml of the project
<repository>
<id>some.id</id>
<url>https://some.host/artifactory/some.id</url>
</repository>
In my ~/.m2/settings.xml
, I have proper authentication block:
<server>
<id>some.id</id>
<username>pawel.veselov@domain.com</username>
<password>{some-fancy-password-hash-goes-here}</password>
</server>
When building the project, Maven is able to access the repository without any problems, as it's supposed to be. In debugging output, I can see it applying the credentials.
But when I try to download an artifact directly, it doesn't look like Maven is even considering the settings file.
mvn org.apache.maven.plugins:maven-dependency-plugin:3.1.1:get \
-DremoteRepositories=some.id::::https://some.host/artifactory/some.id \
-Dartifact=groupId:artifactId:1.1.1
The username is not transmitted. I can see in the debug output, that the BasicRepositoryConnector
is invoked without username/password combination.
So the question goes - can a plugin be invoked so that whatever process makes Maven consider using the authentication stated in its settings file is executed?