如何在Eclipse中使用许多不同的参数运行我的程序

时间:2015-03-30 19:52:27

标签: java eclipse batch-file

我在Eclipse中有一个Java应用程序项目,可执行文件接收参数。然后,应用程序在文件中输出结果值。我希望在运行许多不同的参数后,比较这些结果。

如果我可以做这样的事情,比如在命令提示符下,那就完美了:

run MyProgram --a hi --b 200
run MyProgram --a hello --b 333
...
run MyProgram --a something --b 10000

如何使用Eclipse IDE执行此操作?

如果我无法通过IDE进行操作,那么手动执行此操作的最佳方式是什么(如.bat文件)?

3 个答案:

答案 0 :(得分:0)

基本上,它很简单。 点击运行 - >运行配置 单击Arguments选项卡。 您希望在“程序参数”窗口中键入所有输入值,每个值之间都有空格(空白字符)。 然后只需单击Apply,然后单击Run。

答案 1 :(得分:0)

转到运行配置,参数选项卡 - >在程序参数文本框中 - >输入空格分隔值以发送参数。

如果您想在每次启动时动态传递值而不想打开运行配置,请单击变量按钮并选择string_prompt。并提供变量名称,如下所示 -

${string_prompt: varName1}
${string_prompt: varName2}.

因此,您将弹出一个对话框,要求您输入输入值。

更好的方法  将所有输入值放在txt文件中,逐行读取输入文件并运行逻辑并比较结果。这会让你的生活更轻松。

希望这有帮助。

答案 2 :(得分:0)

最好使用脚本使用不同的参数多次运行程序。按照以下步骤实现此目的。

我有一个java程序,它接受一个输入参数。以下是代码

package org.stackoverflow;

    public class Testing {

        public static void main(String[] args) {
            String inputString = args[0];
            System.out.println("inputString:" + inputString);

        }

    }

我准备了一个 .bat 文件(TestingJavaProgramming.bat),使用不同的参数一次又一次地运行该程序,并在将结果打印到控制台后将结果写入.txt文件。

TestingJavaProgramming.bat文件内容

cd D:\All_POCs\WorkSpace\TestCoreJava\src
javac org\stackoverflow\Testing.java
java org.stackoverflow.Testing "This is 1st time testing">>result.txt
java org.stackoverflow.Testing "This is 2nd time testing">>result.txt
type result.txt

执行批处理文件后的输出

D:\>TestingJavaProgramming.bat

D:\>cd D:\All_POCs\WorkSpace\TestCoreJava\src

D:\All_POCs\WorkSpace\TestCoreJava\src>javac org\stackoverflow\Testing.java

D:\All_POCs\WorkSpace\TestCoreJava\src>java org.stackoverflow.Testing "This is 1st time testing" 1>>result.txt

D:\All_POCs\WorkSpace\TestCoreJava\src>java org.stackoverflow.Testing "This is 2nd time testing" 1>>result.txt

D:\All_POCs\WorkSpace\TestCoreJava\src>type result.txt
inputString:This is 1st time testing
inputString:This is 2nd time testing

您还可以在result.txt文件中看到输出。希望我的提示可以帮到您。