Il componente di debug di JDT comprende funzioni per l'avvio di un programma Java attraverso l'installazione VM attualmente configurata dall'utente per un progetto Java.
I programmi Java che sono stati compilati in un progetto Java possono essere eseguiti richiamando l'appropriato IVMRunner relativo al progetto Java ed eseguendo la classe mediante il nome. Il frammento di codice riportato di seguito mostra come avviare la classe MyClass all'interno dimyJavaProject.
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); } } }
Un altro modo di avviare un programma Java consiste nel creare una configurazione di avvio di un'applicazione Java e avviarla. Il frammento di codice seguente mostra come avviare la classe MyClass all'interno di myJavaProject utilizzando una semplice configurazione di avvio. In base all'impostazione predefinita, l'applicazione di esecuzione che ne risulta utilizza il JRE e il percorso classi associati a 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);