Java-Programm ausführen

Die JDT-Debug-Komponente umfasst Funktionen zum Starten eines Java-Programms, die die Installation der virtuellen Maschine verwenden, die momentan vom Benutzer für ein Java-Projekt konfiguriert ist.   

Kompiliertes Java-Programm starten

Java-Programme, die in einem Java-Projekt kompiliert worden sind, können ausgeführt werden, indem die jeweilige Klasse IVMRunner für das Java-Projekt abgerufen und die Klasse nach Namen ausgeführt wird. Der folgende Codeausschnitt veranschaulicht, wie die Klasse MyClass in myJavaProject gestartet werden kann.

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

Eine andere Möglichkeit zum Starten eines Java-Programms besteht darin, eine Startkonfiguration für eine Java-Anwendung zu erstellen und diese zu starten. Der folgende Ausschnitt veranschaulicht, wie die Klasse MyClass in myJavaProject gestartet werden kann. Die dann aktive Anwendung verwendet standardmäßig die JRE und den Klassenpfad, die myJavaProject zugeordnet sind.

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