Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从java程序运行java程序?_Java_Jar_Runtime_Main - Fatal编程技术网

如何从java程序运行java程序?

如何从java程序运行java程序?,java,jar,runtime,main,Java,Jar,Runtime,Main,我想写一个java程序,可以在运行时运行另一个java程序主类。我该怎么做 在类的静态初始化块(SIB)内调用其他类的main()方法 import packagename.B.*; // all class B members are available in Class A class A { static { B.main(new String[9]); } public static

我想写一个java程序,可以在运行时运行另一个java程序主类。我该怎么做

在类的静态初始化块(SIB)内调用其他类的main()方法

import packagename.B.*; // all class B members are available in Class A 
    class A
    {
        static
        {
           B.main(new String[9]);
        }

        public static void main(String[] args) 
        {
          //do something
        }

    }
    class B
    {
       public static void main(String[] args) 
        {
          //do something
        }
    }
在执行类A之前,它将执行类B的
main()
方法。

读取

基本上,您运行新流程并执行

Process tr = Runtime.getRuntime().exec( new String[]{ "XXX" } );

其中,
XXX
是一个类似于您在命令行中键入的短语。请记住,程序可能位于与当前执行不同的位置,因此您可能必须键入类似于
java\path\to\program\program
之类的命令。

main
B
中未定义。这两个程序位于不同的目录、包、,如果在不同的包中有,那么我们必须将成员导入到当前包中。查看我的更新。