2012-10-01 12 views
9

Vorrei il comando run (di solito predefinito alla combinazione CTRL + F11) di un progetto Java (e C++ se lo conosci anche tu) per chiudere automaticamente il processo precedente (o tutti i processi, se è più semplice) avviato da esso prima di eseguire una nuova istanza.Chiudere l'app Java prima di ogni esecuzione in Eclipse

In breve, l'esecuzione di un progetto dovrebbe anche chiudere l'istanza dell'app precedente. È possibile?

Forse è possibile aggiungere codice all'app stessa e disabilitarla quando non ne ho più bisogno? Lo voglio perché è fastidioso chiudere l'app ogni volta. Non ho bisogno di così tante istanze dell'app.

+0

Avete trovato qualche soluzione? – kukis

+0

@kukis No, questo è stato chiesto molto tempo fa. Ma penso che tu possa trovare i processi attuali e uccidere quelli che appartengono alla tua app, che non sono quelli attuali. –

+0

Si potrebbe voler vedere cosa sta facendo @JonahGraham con i gruppi di avvio. Vedi la sua risposta alla mia domanda qui: http://stackoverflow.com/a/33041696/367605 – KlaymenDK

risposta

2

In Eclipse Neon andare a Window -> Preferences -> Run/Debug -> Launching e nel controllo Launch Operation sezione:

[X] Terminate and Relaunch while launching

Terminate and Relaunch while launching

+0

Bello. Peccato che non usi più Eclipse. Inoltre, questo sembra essere aggiunto solo di recente, su Eclipse Oxygen. Non c'era su Marte. –

1

Più facile a dirsi che a farsi. Suggerisco di terminare il processo da soli facendo clic sulla piccola icona di arresto rosso nella console o terminando il thread principale dalla vista discussioni nella prospettiva del debugger.

+0

Penso che l'idea dell'OP fosse quella di automatizzare questo passaggio. –

1

Questo non è possibile con le funzionalità integrate di Eclipse. Il modo più semplice per automatizzare questo sembra essere

  • Installare la (è sufficiente la caratteristica menzionata) o il plugin launch group feature from CDTEclipseRunner. Permettono la creazione di configurazioni di lancio "batch".
  • Creare una configurazione di esecuzione esterna con un comando "kill" (a seconda del sistema operativo), che può terminare il processo dell'applicazione in base al nome dell'applicazione.
  • Creare un gruppo di avvio batch con uno dei due plug-in menzionati sopra, in cui la configurazione "kill" viene prima e la configurazione di avvio normale viene seconda.
+0

non c'è alcuna soluzione automatica multipiattaforma, che non ha bisogno di fare altro lavoro per definire quale processo uccidere? –

Problemi correlati