Java-Programm ausführen

Die JDT-Debugkomponente umfasst Funktionen für das Starten eines Java-Programms, bei dem die VM-Installation verwendet wird, die durch den Benutzer für ein Java-Projekt gegenwärtig 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);