Maven пароль шифрования BadPaddingException
Я пытаюсь зашифровать пароль сервера в Мои настройки.XML и я получаю это исключение при попытке развернуть артефакт.
Caused by: javax.crypto.BadPaddingException: Given final block not properly padded
at com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:811)
at com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:676)
at com.sun.crypto.provider.AESCipher.engineDoFinal(AESCipher.java:313)
at javax.crypto.Cipher.doFinal(Cipher.java:2087)
at org.sonatype.plexus.components.cipher.PBECipher.decrypt64(PBECipher.java:185)
... 18 more
вот выдержка из xml
<server>
<id>server</id>
<username>username</username>
<password>{N8AF8BmQ5x8HZX/yrlrP1QiKNMEdoXWyBFZd/*zIabY=}</password>
</server>
такое же исключение происходит для моего мастер-пароля, я просто следовал инструкции здесь https://maven.apache.org/guides/mini/guide-encryption.html создал security-настройки.xml, как в руководстве, выполнил эти две команды и скопировал зашифрованные пароли в соответствующие XML-файлы.
mvn --encrypt-master-password <password>
mvn --encrypt-password <password>
3 ответов
в редких случаях есть проблема с побегом, которая, вероятно, происходит здесь. Рассмотрите возможность регенерации masterpassword ( с-emp или --encrypt-master-password) и/или password (с-ep или --encrypt-password) . Их ценности будут меняться каждый раз.
или, может быть, случайно вы скопировали неверный параметр:
--encrypt-master-password
и выводить в настройках.xml вместо:
--encrypt-password
что привело меня в беду. (Политики истечения срока действия пароля)
наткнулся на ту же проблему. Решил его:
1) Создание зашифрованного пароля с использованием кавычек вокруг моего пароля, а не кавычек (это, казалось, удалило+)
например,
mvn -emp "myPassword123"
и mvn -ep "myPassword123"
вместо mvn -emp myPassword123
и mvn -ep myPassword123
2) Убедитесь, что мои настройки.xml и Настройки-Безопасность.xml были в правильных каталогах. (у меня есть настройки.xml в каталоге установки maven и настройках-безопасность.xml в .м2 каталог)
это сработало для меня в любом случае
ps. мне пришлось закрыть терминал после редактирования файла настроек, поскольку я думаю, что он делал какое-то кэширование