解析-D命令行参数java

时间:2013-01-07 21:26:31

标签: java ant

在java中解析这个命令行参数的最佳方法是什么?

$ ant run -Dfilename=(filename_value) -Dmemory_size=(memory_size) -Dk=(k_value)

我实际上并没有使用ant,但我的项目将在此命令行上进行评估。 因此,我试图通过在运行配置中添加此示例参数来测试netbeans。

-Dfilename="C:\\Users\\y_guz_000\\Dropbox\\active projects\\ExternalSort2\\resources\\input.xml" -Dmemory_size="3"
-Dk="2"

我输出的结果是:

System.out.println(System.getProperty("filename"));
System.out.println(System.getProperty("memory_size"));
System.out.println(System.getProperty("k"));

但结果是

null
null
null

2 个答案:

答案 0 :(得分:1)

您没有将系统变量传递给java程序,而是将它们传递给ant,因此这是预期的。谷歌搜索“蚂蚁运行设置系统属性”这看起来是您需要的信息:http://ideoplex.com/id/372/setting-java-system-properties-with-ant

答案 1 :(得分:1)

假设您有一个标准的Netbeans Java SE或Maven Java应用程序项目:

在左侧的Netbeans“项目”树中,右键单击项目图标。选择“类别”列表的“运行”列表项,然后在那里输入文本字段以输入程序和VM参数(-D here)。