2014-04-16 7 views
7

Gibt es eine Möglichkeit zum Debuggen ElasticSearch-Server in Echtzeit von IntelliJ? Ich habe keine exp mit Maven. Mein Ziel ist es, es laufen zu lassen, während ich es debuggen und Variablen und den Ausführungsfluss untersuchen kann.Ausführen/Debug ElasticSearch in IntelliJ

Antwort

8

Ok, es gefunden. Verwenden Sie das Menü Ausführen von IntelliJ, um eine neue Ausführungskonfiguration hinzuzufügen.

  • Run
  • bearbeiten Konfigurationen
  • +
  • Set Main class zu org.elasticsearch.bootstrap.Bootstrap
  • Set VM options zu -Des.foreground = yes

Voila. Credits.

+2

Oder starten Sie einfach die 'ElasticsearchF' Klasse, noch einfacher. – javanna

+2

Was ist die aktualisierte Antwort für 2.x? 'ElasticsearchF' scheint nicht mehr zu existieren und' Bootstrap' hat keine Hauptmethode. –

2

Sie haben nicht angegeben, ob Sie den Elastic Search (ES) -Client oder den Servercode debuggen/betreten möchten.

Für Client-Code-

Solange die Quellen gebunden sind, ja können Sie es debuggen. Wenn Sie Maven verwenden, können Sie es bitten, die Quellen herunterzuladen und anzuhängen, vorausgesetzt, sie sind in der Maven Central Repository verfügbar. (Elastic Search stellt seine Quellen zentral zur Verfügung, also sollten Sie dort gut sein. Wenn nicht, müssten Sie das Quelljar im Projektstrukturdialog "manuell" anhängen.)

Um Maven herunterzuladen und anzuhängen , öffnen Sie das Maven Tool-Fenster und klicken Sie auf die Schaltfläche "Download ..." enter image description here und wählen Sie entweder Download Quellen oder Download Quellen und Dokumentation. IDEA wird nun alle verfügbaren Quell- (und/oder Javadoc-) JARs für alle Abhängigkeiten/Bibliotheken in Ihrem Projekt herunterladen und anhängen. Falls gewünscht, können Sie maven so konfigurieren, dass dies immer geschieht. Um es für das aktuelle Projekt zu setzen, klicken Sie im Maven-Werkzeugfenster auf die Schaltfläche Einstellungen enter image description here und wählen Sie Importieren Knoten oder gehen Sie zu Einstellungen> [Projekteinstellungen]> Maven> Importieren. Überprüfen Sie im Dialogfeld die Optionen "Automatisch herunterladen" und/oder Dokumentation. Um dies als Standard für alle zukünftigen Projekte festzulegen, die Sie erstellen, gehen Sie zu Datei> Andere Einstellungen> Standardeinstellungen> Maven> Importieren und nehmen Sie die Einstellung vor.

Sobald die Quellen angeschlossen sind, können Sie in den elastischen Suchcode zu dem Schritt, oder öffnen Sie eine eine Klasse von entweder 1) mit Ctrl + N suchen und eine Klasse eingeben, Strg eingeben + N ein zweites Mal Bibliotheksklassen in Ihrer Suche oder 2) mit Ctrl +B (wenn Sie den Cursor auf einem Methodenaufruf ist) oder Ctrl +Click gehen auf die Methode Erklärung aufzunehmen. Sie können dann Haltepunkte setzen.

Für Server-Code

Sie benötigen ein elastisches Suchprojekt mit dem Quellcode zu erstellen. Am einfachsten wäre es, ihr Repo zu klonen (oder es auf andere Weise zu überprüfen). Sie können die ES-Serverbibliotheken (einschließlich Quellen) auch einfach an Ihr Projekt anhängen.

Wenn Sie die elastische Suche lokal ausführen, erstellen Sie einfach eine lokale Run/Debug-Konfiguration, um ES auszuführen und über Debug zu starten. Wenn Sie ES auf einem Remote-Server ausführen, müssen Sie eine Remote-Debug-Konfiguration erstellen und diese dann an den Remote-ES-Server anhängen (der mit den richtigen Java-Debug-Eigenschaften gestartet werden muss).) Siehe Hilfe> IntelliJ IDEA> Referenz> Dialog> Ausführungs-/Debugkonfigurationen> Ausführen/Debugkonfiguration: Remote und Hilfe> IntelliJ IDEA> Sprache und Framework-spezifische Richtlinien> Java EE> Arbeiten mit Anwendungsservern> Arbeiten mit Serverausführung/Debug-Konfigurationen für weitere Informationen.

+0

Hallo, ich frage nach elasticsearch server. Ich habe das Projekt zu intellij importiert und ich verpackte es auch mit Maven-Ziel. Meine Frage ist, wie man ein Ziel erstellt, das die elastische Suche ausführt. – Vame

+0

Da sind sie nun zu groß geworden. Gibt es eine Möglichkeit, den elastischen Suchcode in Intellij zu debuggen? –