我正在尝试将自定义 heroku 配置变量传递给 application.properties 但没有传递任何值。
我的 application.properties 条目:
spring.mail.username=${SPRING_MAIL_SENDER_USERNAME}
然后我将此值注入 String 变量:
@Value("${spring.mail.username}")
private String SENDER_MAIL_USERNAME;
但是当我尝试使用它时 SENDER_MAIL_USERNAME 是一个空字符串。
我可以像这样得到正确的值:
System.getenv("SPRING_MAIL_SENDER_USERNAME");
但这不是我要找的。任何人都知道我在这里做错了什么?
编辑:
也许值得补充的是,我的项目使用 maven 和 2 个模块(后端和前端)。简化的项目结构如下所示:
-app
-backend
-src.main
-java.com.jakubeeee.app
-some java files...
-resources
-application.properties
-frontend
-src
-some web files...
我还使用包含以下内容的 Procfile:
web: java -Dserver.port=$PORT -jar $PATH_TO_JAR
其中 $PATH_TO_JAR 是具有值的 heroku 配置变量:
backend/target/myjarname.jar