gradle 使用 vm 选项 jasypt 私钥无效

gradle using vm option jasypt private key is not working

我想在 jasypt 中使用数据库密码。

首先,在 application.yml 中,它正在编写 jasypt.encryptor.password=myencrypt。

但我想使用 vm 选项。 所以我使用 $ ./gradlew -Djasypt.encryptor.password=myencrypt bootRun

但这使得 无法将 spring.datasources.password 下的属性绑定到 java.lang.string: 原因:必须为基于密码或非对称加密提供 'jasypt.encryptor.password' 或 ['jasypt.encryptor.privatr-key-string'、'jasypt.encrytor.private-key-location'] 之一

jasypt 版本 2.1.2 和 3.0.4 是相同的错误类型。 jdk1.8

使用

-Pjasypt.encryptor.password=myencrypt

在build.gradle

bootRun {
    systemProperty "jasypt.encryptor.password", findProperty("jasypt.encryptor.password")
}

使用 jasypt 2.1.2.

3.0.0 以上,需要 jasypt.encryptor.iv-generator-classname 因为算法改变