我试图通过命令行传递环境变量来运行我的Sping Boot 应用程序。但在每种情况下(我尝试了许多组合),我的应用程序都从application.yml文件中读取这些值,而不是命令。并给出以下错误:
致命:用户“${DB_USERNAME}”的密码验证失败
另一方面,当我通过在Run配置上传递以下环境变量来使用IntelliJ IDEA运行应用时,它可以正常工作。
IntelliJ IDEA运行配置〉环境变量:
DB_NAME=demo;DB_USERNAME=postgres;DB_PASSWORD=pass;JWT_SECRET=secretKey
类似地,当我通过mvnw
在项目根上运行相同的命令时,它也能工作。
mvn spring-boot:run -Dspring-boot.run.jvmArguments="-Xdebug"
-Dspring-boot.run.arguments="--DB_NAME=demo
--DB_USERNAME=postgres --DB_PASSWORD=pass --JWT_SECRET=secretKey"
但是我想在调试模式下使用命令并传递这些参数(环境变量)来运行IntelliJ IDEA。那么,我该怎么做呢?为什么当我尝试在IntelliJ IDEA上使用“Run anything”窗口时,同一个命令不起作用呢?
1条答案
按热度按时间ddrv8njm1#
您可以使用相同的配置,并使用IntelliJ中Run Button的右下一个按钮在调试模式下运行应用程序。