Spring CLI v2.1.0.RELEASE - шифрование -> NoSuchMethodError - PullRequest
0 голосов
/ 06 ноября 2018

когда я бегу:

spring encrypt totallysecretpassword --key=insanity

Исключение в потоке "main" java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) в java.lang.reflect.Method.invoke (Method.java:498) в org.springframework.boot.loader.MainMethodRunner.run (MainMethodRunner.java:48) на org.springframework.boot.loader.Launcher.launch (Launcher.java:87) на org.springframework.boot.loader.Launcher.launch (Launcher.java:50) в org.springframework.boot.loader.JarLauncher.main (JarLauncher.java:51) Вызвано: java.lang.NoSuchMethodError: org.springframework.cloud.cli.command.encrypt.BaseEncryptOptionHandler.option (Ljava / Util / Коллекция; Ljava / языки / String;) Ljoptsimple / OptionSpecBuilder; в org.springframework.cloud.cli.command.encrypt.BaseEncryptOptionHandler.options (BaseEncryptOptionHandler.java:53) в org.springframework.boot.cli.command.options.OptionHandler.getParser (OptionHandler.java:68) в org.springframework.boot.cli.command.options.OptionHandler.run (OptionHandler.java:83) в org.springframework.boot.cli.command.OptionParsingCommand.run (OptionParsingCommand.java:54) в org.springframework.boot.cli.command.CommandRunner.run (CommandRunner.java:219) в org.springframework.boot.cli.command.CommandRunner.runAndHandleErrors (CommandRunner.java:171) в org.springframework.boot.cli.SpringCli.main (SpringCli.java:63) ... еще 8

Я переустановил JCE, как сказано здесь: https://cloud.spring.io/spring-cloud-cli/

По сути, я хочу вот что: https://blog.novatec -gmbh.de / шифрованные-свойства-весна /

но в 1.3.2 это была та же ошибка, поэтому я использовал последнюю версию ... но все равно безуспешно ... что мне не хватает?

- не удалось запустить шифрование 2.0.8 на моем окне с Windows, ответ @jtim мне не понравился, когда я делал это на Ubuntu-box!

Ответы [ 3 ]

0 голосов
/ 09 марта 2019

Просто столкнулся с той же проблемой. Используя Sdkman, вы можете быстро перейти на версию, которая отлично работает:

sdk ls springboot
sdk use springboot 2.0.8.RELEASE
spring install org.springframework.cloud:spring-cloud-cli:2.0.0.RELEASE
0 голосов
/ 16 июля 2019

Я тоже столкнулся с этой проблемой, и вот что я сделал,

# Step 1: Download the binaries to install (https://repo.spring.io/release/org/springframework/boot/spring-boot-cli/)
$ wget https://repo.spring.io/release/org/springframework/boot/spring-boot-cli/2.0.8.RELEASE/spring-boot-cli-2.0.8.RELEASE-bin.tar.gz

# Step 2: Extract the tar.gz
$ tar xvf spring-boot-cli-2.0.8.RELEASE-bin.tar.gz

# Step 3: Enable execute permissions
$ chmod +x spring-2.0.8.RELEASE/bin/spring

# Install Spring Cloud
$ spring install org.springframework.cloud:spring-cloud-cli:2.0.0.RELEASE

# Step 5: Add it to your PATH
$ cd spring-2.0.8.RELEASE/bin
$ echo "PATH=$(pwd):\$PATH" >> .bashrc or  .zshrc

Это обычно работает для Mac и любых систем на базе Linux. Я лично пробовал это на Mac и Linux Mint

Выход:

$ spring encrypt totallysecretpassword --key=insanity
f5a7944890c871ef58971eeaf123bbc750727b012cce8f7072def5bf71b000fb00089e106775ac0306b5f15b8f17d233

Надеюсь, это кому-нибудь поможет.

0 голосов
/ 01 февраля 2019

Это серьезное изменение по сравнению с spring-boot-cli. Просто дождитесь выпуска совместимой версии spring-cloud-cli ( запрос новой версии).

Или вы можете установить более старую версию spring-boot-cli, в которой нет изменений, например 2.0.8.RELEASE

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...