我的意思是这样的,一个java程序正在运行,比如其源代码为
public class running{
    public static void main(string[] args){
       System.out.println("helloworld");
      ////////////////////////////////在此行调入waiting程序并且编译,动态运行
     }
}我另外有一个程序,存在硬盘中,是.java文件,该程序若如下
public class waitting{
      public static void main(string[] args){
        System.out.println("how are you ");
       }
}如何达到运行running的时候又编译而且运行waiting

解决方案 »

  1.   

    一种方式:可以通过java.lang.Runtime和java.lang.Process调用windows的cmd命命令实现你的要求;
    另一种:通过ant构建工具,这个好像离你的要求比较远,呵呵。
      

  2.   

    最简单的就是都先编译好,且在两个类中都写main方法,执行其中一个类时再调用另一个类的main就可以了
      

  3.   

    3楼,你的程序我用jcreator编译运行的时候出现
    --------------------配置:            <--------------------
    Usage: java [-options] class [args...]
               (to execute a class)
       or  java [-options] -jar jarfile [args...]
               (to execute a jar file)where options include:
        -client   to select the "client" VM
        -server   to select the "server" VM
        -hotspot      is a synonym for the "client" VM  [deprecated]
                      The default VM is client.
                      
        -cp <class search path of directories and zip/jar files>
        -classpath <class search path of directories and zip/jar files>
                      A ; separated list of directories, JAR archives,
                      and ZIP archives to search for class files.
        -D<name>=<value>
                      set a system property
        -verbose[:class|gc|jni]
                      enable verbose output
        -version      print product version and exit
        -version:<value>
                      require the specified version to run
        -showversion  print product version and continue
        -jre-restrict-search | -jre-no-restrict-search
                      include/exclude user private JREs in the version search
        -? -help      print this help message
        -X            print help on non-standard options
        -ea[:<packagename>...|:<classname>]
        -enableassertions[:<packagename>...|:<classname>]
                      enable assertions
        -da[:<packagename>...|:<classname>]
        -disableassertions[:<packagename>...|:<classname>]
                      disable assertions
        -esa | -enablesystemassertions
                      enable system assertions
        -dsa | -disablesystemassertions
                      disable system assertions
        -agentlib:<libname>[=<options>]
                      load native agent library <libname>, e.g. -agentlib:hprof
                        see also, -agentlib:jdwp=help and -agentlib:hprof=help
        -agentpath:<pathname>[=<options>]
                      load native agent library by full pathname
        -javaagent:<jarpath>[=<options>]
                      load Java programming language agent, see java.lang.instrument处理已完成。
                
      

  4.   

    可以用包这个方法吗,不过要先把程序编译成.class文件,再导包才行,
      

  5.   

    将被调用这编译成可执行程序,再使用二楼的第一种方法即可。二楼使用ant的方法和楼主的要求是不相符的。