C'est la façon dont cela fonctionne actuellement, et c'est le Maven Deploy Plugin Usage
pom.xml
[...]
<distributionManagement>
<repository>
<id>internal.repo</id>
<name>MyCo Internal Repository</name>
<url>Host to Company Repository</url>
</repository>
</distributionManagement>
[...]
settings.xml
[...]
<server>
<id>internal.repo</id>
<username>someUser</username>
<password>somePassword</password>
</server>
[...]
et ce que j'essaie de réaliser, c'est de trouver un moyen de saisir le nom d'utilisateur et le mot de passe sur la ligne de commande. atteindre mvn deploy -someUser -somePassword
Le settings.xml
est considéré comme personnel, c'est pourquoi le nom d'utilisateur et le mot de passe sont stockés dans le (utilisateur -) settings.xml
. Donc, en général, il n'y a aucune raison de les passer en argument. (btw, les mots de passe peuvent être stockés cryptés ici) Le maven-deploy-plugin
n'a pas la possibilité de les transmettre via la ligne de commande. Cependant, j'ai vu des hacks comme:
<username>${internal.repo.username}</username>
Et maintenant, vous pouvez faire -Dinternal.repo.username=someUser
Je vais exposer ici la solution complète, mais la solution de Robert Scholte fonctionne à merveille.
Dans ton ~/.m2/settings.xml
vous devriez avoir les éléments suivants
<settings>
<servers>
<server>
<id>internal.repo</id>
<username>${repo.login}</username>
<password>${repo.pwd}</password>
</server>
</servers>
</settings>
et puis vous venez
mvn -Drepo.login=someUser -Drepo.pwd=SomePassword clean install
Vous pouvez même utiliser votre variable d'environnement (si vous le faites sur le serveur/conteneur distant, par exemple):
mvn -Drepo.login=$REPO_LOGIN -Drepo.pwd=$REPO_PWD clean install