如何复制eclipse';在java代码中运行参数?

如何复制eclipse';在java代码中运行参数?,java,Java,假设我有一个不允许更改的java程序,但我需要在自己的java程序中使用它并与它的类交互。这个程序使用了很多我不熟悉的特性,比如反射API、单例模式、GUI、注入器等等 我能提供的唯一输入是通过运行配置(运行>运行配置>参数): 所有参数都不会在整个程序中获得任何其他值。所以我需要在调用这个程序的main时传递这些值 现在我想创建一个调用main方法的类的对象,我产生了以下代码: new Thread(new Runnable(){ @SuppressWarnings("static-a

假设我有一个不允许更改的java程序,但我需要在自己的java程序中使用它并与它的类交互。这个程序使用了很多我不熟悉的特性,比如反射API、单例模式、GUI、注入器等等

我能提供的唯一输入是通过运行配置(运行>运行配置>参数):

所有参数都不会在整个程序中获得任何其他值。所以我需要在调用这个程序的main时传递这些值

现在我想创建一个调用main方法的类的对象,我产生了以下代码:

new Thread(new Runnable(){
    @SuppressWarnings("static-access")
    public void run(){
        sim.main(new String[]
             { 


           //My question is here, how should I list the arguments?

     });
    }
}).start();

但我不确定如何列出参数,是否也应该包括它们的参数名?像
“seed=125”

以编程方式从命令行(像Eclipse的运行向导)以
的形式复制JVM调用的确切方式如下所示:

String[] arguments={"paramName0=value0", "paramName1=value1"};
aFullClassName.main(arguments);

此外,您还必须注意
main
方法可能引发的异常。编译器报告的错误会让您知道。

如果从命令行调用此程序,会是什么样子?非常感谢。我试试看。
aFullClassName
可以是该类的对象吗?我试图在两个程序中处理同一个对象。虽然它可能是,但它是无用的,因为
main
是一个静态方法:它从不在类的某个实例上执行,而是在类本身上执行。这就是编译器警告您不要在实例引用上调用静态方法的原因:您可能错误地认为在不同的实例上调用它会产生不同的结果。感谢@Little Santi的澄清,您是对的:)
String[] arguments={"paramName0=value0", "paramName1=value1"};
aFullClassName.main(arguments);