问题描述
嗨,我正在尝试为我的项目生成Jar文件,我正在使用Jasypt加密我的jwtsecret。但是每当我尝试在eclipse中做 clean package 作为生成我的jar文件的目标时,都会出现此错误,其产生原因:java.lang.IllegalStateException:必需的加密缺少配置属性:jasypt.encryptor.password 。
这是我尝试过的命令-
mvn clean install -U dependency:copy-dependencies -Darguments="-Djasypt.encryptor.password=${tokensecretkey}"
与其他一些我用来进行试玩和打击的人一起。有人可以帮我吗?
解决方法
以下命令在使用Jasypt时生成Jar文件:
Map<String,Consumer<Scanner>> commands = new HashMap<>();
...
commands.put("foo",someCommand::go); // where someCommand is a variable with a go(Scanner) method
commands.put("bar",new OtherCommand());
commands.put("hello",unused -> { System.out.println("Hello!"); });
...
String commandName = scanner.next();
commands.get(commandName).accept(scanner);
然后使用下面的命令来运行生成的Jar文件:
mvn -B clean package -Djasypt.encryptor.password=<secret key>