Получение ошибки сборки maven: javax.crypto.Исключение BadPaddingException: данный конечный блок неправильно дополнен в ~ /.m2/settings-security.xml

#java #maven

#java #maven

Вопрос:

Согласно документу, я создал / добавил следующий код в моем ~ /.m2/settings-security.xml файл:

 <settingsSecurity>
    <master>{ENCRIPTED_PASSWORD}</master>
</settingsSecurity>
  

После выполнения сборки maven (mvn clean package), получаю следующую ошибку:

 [ERROR] error using security dispatcher: org.sonatype.plexus.components.cipher.PlexusCipherException: javax.crypto.BadPaddingException: Given final block not properly padded
org.sonatype.plexus.components.sec.dispatcher.SecDispatcherException: org.sonatype.plexus.components.cipher.PlexusCipherException: javax.crypto.BadPaddingException: Given final block not properly padded


[ERROR] Failed to execute goal org.apache.maven.plugins:maven-jarsigner-plugin:1.4:sign (sign) on project com.daimler.duke.common.server: error using security dispatcher: org.sonatype.plexus.components.cipher.PlexusCipherException: javax.crypto.BadPaddingException: Given final block not properly padded -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] 
  

http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

Может ли кто-нибудь по просьбе помочь мне в этом, я теперь новичок в maven.

Спасибо

Комментарии:

1. Может быть, у вас есть пароль (или зашифрованный пароль) с некоторыми «плохими» символами? Например ‘$’, ‘!’, ‘ ‘, ‘{‘ или ‘}’ . Посмотрите на советы .

2. После удаления ‘{,}’ я получил ошибку: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-jarsigner-plugin:1.4:sign (sign) on project com.daimler.duke.common.server: Failed executing 'cmd.exe /X /C "C:jdk1.8.0_144jre..binjarsigner.exe -keystore ../DukeUpdateSite/resources/DUKE.jks -storepass ***** -keypass ***** C:WorkspaceTrunkcom.daimler.duke.common.servertargetcom.daimler.duke.common.server-182.0.0-SNAPSHOT.jar duke"' - exitcode 1 -> [Help 1]

3. попробуйте выполнить экранирование. Пример из советов: jSMOWnoPFgsHVpMvz5VrIt5kRbzGpI8u {EF1iFQyJQ= превращается в {jSMOWnoPFgsHVpMvz5VrIt5kRbzGpI8u {EF1iFQyJQ=} — в фигурные скобки и с {

4. Мой пароль не содержит никаких символов «{» посередине, например, мой пароль : {wkjfheiofho klafjj}

Ответ №1:

Лучше восстановить пароль. Редактирование сгенерированного пароля может привести к его повреждению.

Ниже приведен пример команды для его генерации. Пожалуйста, обратите внимание, что при генерации вашего пароля с помощью команды mvn используйте кавычки вокруг вашего пароля.

 mvn -emp "<PASSWORD>" and mvn -ep "<PASSWORD>"
  

Комментарии:

1. Как я могу избежать добавления моего мастер-пароля в ~ /.m2/settings-security.xml ?

2. Вы не можете избежать этого. Но я предлагаю вам сохранить свой settings-security.xml файл в удаленном расположении и получите к нему доступ в вашем ~./m2/settings-security.xml. Вы можете указать местоположение, как показано ниже <settingsSecurity> <перемещение>/Volumes/usb-key/settings-security.xml </relocation> </settingsSecurity>