如何在Eclipse上测试时传递-D System属性?

时间:2009-05-14 09:26:19

标签: java eclipse

我正在Windows上开发Eclipse,而Code则部署在Unix上。我使用System.getProperty(“key”)获取系统属性值...我如何在Eclipse中传递它,以便我不必修改代码,它可以在Eclipse上进行调试?

有什么建议吗?

6 个答案:

答案 0 :(得分:125)

运行 - >运行配置,选择项目,第二个选项卡:“参数”。顶部框用于您的程序,底部框用于VM参数,例如-Dkey=value

答案 1 :(得分:33)

您可以使用java System.properties,从eclipse中使用它们:

  1. 在测试-Dlabel="label_value"的VM参数中添加Run Configuration,如下所示:
  2. eclipse_vm_config

    1. 然后运行测试:

      import org.junit.Test;
      import static org.junit.Assert.assertEquals;
      
      public class Main {
          @Test
          public void test(){
              System.out.println(System.getProperty("label"));
              assertEquals("label_value", System.getProperty("label"));
          }
      }
      
    2. 最后它应该通过测试并在控制台中输出:

      label_value
      

答案 2 :(得分:13)

您可以在运行配置中添加命令行参数。只需编辑运行配置并将-Dmyprop = value(或其他)添加到VM Arguments Box。

答案 3 :(得分:4)

运行配置 - >参数 - > vm参数

(也可以放在Debug Configuration-> Arguments-> VM Arguments下的调试配置中)

答案 4 :(得分:0)

是的,这就是方法:

右键单击您的程序,选择运行->运行配置 然后在vm参数上

-Denv=EnvironmentName -Dcucumber.options="--tags @ifThereisAnyTag"

然后您可以申请并关闭。

答案 5 :(得分:0)

这将适用于junit。对于TestNG,请使用以下命令

-ea -Dmykey="value" -Dmykey2="value2"