在 Maven 中设置环境变量
Posted
技术标签:
【中文标题】在 Maven 中设置环境变量【英文标题】:Set enviromment variable in Maven 【发布时间】:2017-01-01 03:36:20 【问题描述】:我有一个带有以下 application.properties
设置的 Spring Boot 应用程序。
#...
spring.datasource.url=$JDBC_DATABASE_URL
当我使用像 IntelliJ 这样的 IDE 时,我可以设置环境变量,并且在我启动应用程序时它会启动。
但现在我想使用 maven mvn spring-boot:run
在控制台上启动我的应用程序。这里如何设置环境变量?
【问题讨论】:
【参考方案1】:从 spring-boot 版本 2 argline 键 run.jvmArguments
替换为 spring-boot.run.jvmArguments
: https://docs.spring.io/spring-boot/docs/current/maven-plugin/reference/htmlsingle/#run-example-debug 。所以正确的命令是:
mvn spring-boot:run -Dspring-boot.run.jvmArguments="-DJDBC_DATABASE_URL=jdbc:..."
【讨论】:
【参考方案2】:要将 JVM 参数传递给 spring 应用程序,请使用:
mvn spring-boot:run -Drun.jvmArguments="-Dspring.datasource.url=jdbc:postgresql://localhost/mydb?user=postgres&password=postgres"
或
mvn spring-boot:run -Drun.jvmArguments="-DJDBC_DATABASE_URL=jdbc:postgresql://localhost/mydb?user=postgres&password=postgres"
见http://docs.spring.io/spring-boot/docs/current/maven-plugin/examples/run-debug.html
【讨论】:
【参考方案3】:试试这个
mvn spring-boot:run -DvariableName=variableValue
通过控制台将变量传递到应用程序
【讨论】:
这边?mvn spring-boot:run -DvariableName=JDBC_DATABASE_URL=jdbc:postgresql://localhost/mydb?user=postgres&password=postgres
它不工作...以上是关于在 Maven 中设置环境变量的主要内容,如果未能解决你的问题,请参考以下文章