生成settings-security.xml文件以进行Maven密码加密

时间:2018-07-24 16:17:15

标签: maven password-encryption

我想使用maven password encryption加密Apache Archiva服务器密码。

我做到了:

mvn --encrypt-master-password 12345

好。我在方括号中得到了一个加密的密码。 然后:

mvn --encrypt-password 12345

Maven抱怨:

[ERROR] Error executing Maven.
[ERROR] java.io.FileNotFoundException: /home/myUserName/.m2/settings-security.xml (No such file or directory)
[ERROR] Caused by: /home/myUserName/.m2/settings-security.xml (No such file or directory)

我知道我应该将加密的主密码放在settings-security.xml文件中,但是默认位置不存在该密码,并且maven无法生成该密码。

此配置文件的内容应该是什么?如何产生呢?

2 个答案:

答案 0 :(得分:2)

mvn --encrypt-master-password不会创建文件security-settings.xml。您必须自己做。

所以过程是:

  1. 使用命令mvn --encrypt-master-password生成主密码。记住此密码。
  2. security-settings.xml中创建一个新文件${user.home}/.m2/。例如,在Mac OS X或Ubuntu上为~/.m2/settings-security.xml

写入该文件:

<settingsSecurity>
  <master>OUTPUT OF THE COMMAND: mvn --encrypt-master-password</master>
</settingsSecurity>

例如:

<settingsSecurity>
  <master>{jSMOWnoPFgsHVpMvz5VrIt5kRbzGpI8u+9EF1iFQyJQ=}</master>
</settingsSecurity>

之后,maven crypto命令在命令行上起作用:

mvn --encrypt-password

正如khmarbaise所提到的,可以在这里找到更详细的信息:https://maven.apache.org/guides/mini/guide-encryption.html

答案 1 :(得分:0)

我建议阅读有关encrypting passwords的文档,该文档应显示如下:

  密码大师