运行 Java 程序

“JDT 调试”组件包含使用用户当前为 Java 项目配置的 VM 安装来启动 Java 程序的设施。  

启动已编译的 Java 程序

可以通过获取 Java 项目的适当 IVMRunner,并按名称来运行该类,从而运行在 Java 项目中已编译的 Java 程序。下列代码段说明如何启动 myJavaProject 中的类 MyClass

   IVMInstall vmInstall = JavaRuntime.getVMInstall(myJavaProject);
   if (vmInstall == null)
      vmInstall = JavaRuntime.getDefaultVMInstall();
   if (vmInstall != null) {
      IVMRunner vmRunner = vmInstall.getVMRunner(ILaunchManager.RUN_MODE);
      if (vmRunner != null) {
         String[] classPath = null;
         try {
            classPath = JavaRuntime.computeDefaultRuntimeClassPath(myJavaProject);
         } catch (CoreException e) { }
         if (classPath != null) {
            VMRunnerConfiguration vmConfig =
               new VMRunnerConfiguration("MyClass", classPath);
            ILaunch launch = new Launch(null, ILaunchManager.RUN_MODE, null);
            vmRunner.run(vmConfig, launch, null);
         }
      }
   }

启动 Java 程序的另一种方法是创建 Java 应用程序启动配置,然后启动它。以下代码段说明可以如何使用简单启动配置来启动 myJavaProject 内的类 MyClass。缺省情况下,获得的正在运行应用程序使用与 myJavaProject 相关联的 JRE 和类路径。

   ILaunchManager manager = DebugPlugin.getDefault().getLaunchManager();
   ILaunchConfigurationType type = manager.getLaunchConfigurationType(IJavaLaunchConfigurationConstants.ID_JAVA_APPLICATION);
   ILaunchConfigurationWorkingCopy wc = type.newInstance(null, "SampleConfig");
   wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_PROJECT_NAME, "myJavaProject");
   wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_MAIN_TYPE_NAME, "myClass");
   ILaunchConfiguration config = wc.doSave();	
   config.launch(ILaunchManager.RUN_MODE, null);