我是intellij的新手。我想为我的maven命令行应用程序添加程序参数,以便它们可以在Google Cloud SDK 143.0.1
bq 2.0.24
bq-nix 2.0.24
core 2017.02.09
core-nix 2017.02.09
gcloud
gcloud-deps 2017.02.09
gcloud-deps-linux-x86_64
gsutil 4.22
gsutil-nix 4.22
kubectl
kubectl-linux-x86_64 1.5.2
方法中使用,例如:main(String[] args)
,它指定了一些在我的main函数中触发的方法。
我尝试使用Maven配置(运行/调试配置)直接在命令行部分添加参数,但它没有成功。
我还尝试了运行Maven项目的JUnit,但程序参数部分已被禁用。
以下是我尝试过的快照。
使用junit配置:
使用maven配置:
答案 0 :(得分:11)
JUnit测试是通过测试运行器框架执行的,JUnit根本不调用main
方法,因此你不能以这种方式提供程序参数。
要通过main
方法将参数传递给应用程序,您必须在IDEA中使用Application Run/Debug configuration类型。
如果要将参数传递给单元测试,请考虑使用VM Options字段,例如-Dparam=value
,在测试方法中,您可以使用String value = System.getProperty("param");
Maven在某些单元测试插件中使用argLine也支持它。