我有一个标准的Java项目布局,在一些测试中我使用System.getenv("my_var")。我想要通过命令行(从CI服务器)运行我的测试,并传递环境变量的值。就像这样: ./gradlew test -Dmy_var=xyz 当然,这个不起作用,因为测试是由不同的JVM运行的。那么传递环境变量的确切命令是什么?我宁愿不更改我的构建脚本、创建新任务等,只想通过命令行传递环境变量。我该怎么做呢?
System.getenv
引入了通常不受你控制的状态。 - Makotojava
,-Dthis=that
也只会设置一个系统属性而不是环境变量。并且仅在“要运行”的参数(主类或模块名称或jar名称,具体取决于情况)之前(左侧)这样做。 - dave_thompson_085