我遇到了一些麻烦,以便在我的spring boot app的application.yml中指定某些资源的绝对路径。
使用相对路径工作正常,我将这些文件放在src / main / resources / key下,配置如下:
public: encryption: key: keys\encrypt\public_enc_asn1.key decryption: key: keys\decrypt\public_dec_asn1.key private: decryption: key: keys\decrypt\private_dec_asn1.key
我正在使用Windows。我把相同的文件放在C:\ test \下,在application.yml中使用以下配置,但它们不起作用:
public: encryption: key: C:\test\encrypt\public_enc_asn1.key decryption: key: C:\test\decrypt\public_dec_asn1.key private: decryption: key: C:\test\decrypt\private_dec_asn1.key
如何在application.yml中指定windows绝对路径?我也试过${user.home}
选项,但没有运气。
答案 0 :(得分:3)
错误是您的值中的分号(如C:\test\...
中所示)。你需要用引号括起你的价值:
public:
encryption:
key: 'C:\test\encrypt\public_enc_asn1.key'
decryption:
key: 'C:\test\decrypt\public_dec_asn1.key'
private:
decryption:
key: 'C:\test\decrypt\private_dec_asn1.key'
答案 1 :(得分:1)
我正在使用 Spring Boot 在 Kafka 上进行一个项目,但在提供绝对路径时出现错误。如上所述,我使用单引号尝试了 alexbt 的解决方案,但它对我不起作用。
在路径开头用单引号添加 file:\
效果很好。
ssl:
trust-store-location: 'file:\F:\Spring-boot-projects\Kafka\ssl\client.truststore.jks'
trust-store-password: 12345678
key-store-location: 'file:\F:\Spring-boot-projects\Kafka\ssl\client.keystore.jks'
key-store-password: 12345678