Выполнение программы на Java

Компонент JDT Debug включает средства запуска программы на Java с использованием установки виртуальной машины, настраиваемой пользователем для проекта Java.  

Запуск откомпилированной программы на Java

Для того чтобы запустить программу на Java, откомпилированную в проекте Java, для этого проекта Java можно получить соответствующий интерфейс IVMRunner и для запустить класс, указав его имя. Приведенный ниже фрагмент кода показывает, как можно запустить класс MyClass внутри проекта myJavaProject.

   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 и его запуска. Приведенный ниже фрагмент кода показывает, как с помощью простой конфигурации запуска можно запустить класс MyClass внутри проекта myJavaProject. При выполнении получившегося в результате приложения будет по умолчанию использоваться среда выполнения Java (JRE) и путь к классам, связанные с проектом myJavaProject.

   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);