![](/img/trans.png)
[英]How do I set MyBatis configuration properties in an application.properties file in a Spring Boot application?
[英]How do I specify local file path to my ssl keystore file in spring application.properties?
鑒於我在c:\\path\\to\\file\\keystore.jks
我的 application.properties 文件包含server.ssl.key-store=c:\\path\\to\\file\\keystore.jks
我收到以下異常java.io.FileNotFoundException: C:\\Windows\\Temp\\tomcat.2910824355292831382\\file:\\c:\\path\\to\\file\\keystore.jks (The filename, directory name, or volume label syntax is incorrect)
指定路徑的正確方法是什么?
不要依賴絕對路徑。 將文件放入與 Spring Boot JAR 相同的目錄中,並將此行添加到您的 application.properties 中:
server.ssl.key-store=file:keystore.jks
第二個選項是將系統變量傳遞給-Dserver.ssl.key-store=file:keystore.jks
下面使用 Tomcat 8.5.2 為我工作:
窗戶:
server:
ssl:
key-store: file:C:\<complete file path with extension>
Linux:
server:
ssl:
key-store: file:/J2EE/<complete file path with extension>
當我進行這些更改時,這對我有用:
檢查 spring boot 正在使用哪個版本的 tomcat。 根據這個 github issue低於 7.0.66 的 tomcat 版本相對化 server.ssl.key-store 設置。
放置file:
對我來說不適用於相對路徑。 總之:
如果您將密鑰庫放在您的資源中,您可以這樣做:
key-store: classpath:keystore.jks
但是,如果您嘗試這樣做:
key-store: file:keystore.jks
你會得到:
java.lang.IllegalStateException: no valid keystore
所以,相反,只需這樣做:
key-store: keystore.jks
奇怪的是,如果您提供完整路徑(不是相對路徑),那么file:
仍然有效。
只需對密鑰庫文件路徑使用引號
server:
port: 8443
ssl:
enabled: true
key-store: "/path/to/keystore/keystore.jks"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.