Gibt es eine Möglichkeit, Vertx in einer IDE auszuführen? Ich weiß, ich kann einen Server in einer Datei erstellen und dann anrufen
vertx run server.Java
von der Befehlszeile aus, aber gibt es eine Möglichkeit, die server.Java-Datei in einer IDE auszuführen?
erstellen Sie ein Maven-Projekt wie das manual sagt.
Dann importieren Sie das Projekt als Maven-Projekt
Erstellen Sie ein neues Startprogramm (Eclipse), das als Hauptklasse verwendet wird
Geben Sie auf der Registerkarte "Programmargumente" Folgendes ein: " Führen Sie your.package.ServerVerticle -conf conf.json aus."
Sie können die Option conf.json weglassen. Wenn Sie keine haben, ist dies nur ein Beispiel, um zu zeigen, dass Sie jede andere Option dort setzen können, die Sie mit dem Starten von Vert.x von der Befehlszeile aus starten würden.
PRO TIP: Wenn Ihr Verticle in einer anderen Sprache geschrieben ist, verwenden Sie das Präfix mit dem Namen der Sprache wie folgt:
Und so weiter.
Die akzeptierte Antwort ist vollkommen in Ordnung. Nur der Vollständigkeit halber können Sie auch einfach eine alte Java-Hauptklasse ausführen, indem Sie die Vertx-Instanz als Hauptstart starten.
Code sollte so aussehen:
public static void main(final String... args) {
Vertx vertx = Vertx.vertx();
vertx.deployVerticle(/* put your stuff here */);
}
Da gehst du hin.
Ich habe zuvor eine frühere Antwort bearbeitet, aber ich trenne sie aus Gründen der Klarheit.
Das folgende Beispiel ist für Eclipse, aber dieselbe Grundvoraussetzung sollte mit jeder IDE funktionieren.
Richten Sie Ihr Maven , Gradle oder ein anderes Projekt ein und importieren Sie es in Eclipse
Erstellen Sie eine run oder debug config und legen Sie io.vertx.core.Launcher
als Hauptklasse fest.
run org.example.InitVerticle -conf <path to config>
fest. wobei org.example.InitVerticle
Ihr Haupt- oder Intialisierer ist. Beim Debuggen in Vert.x 3 stellen Sie möglicherweise fest, dass ein blockierter Thread-Watchdog ständig Warnungen (und möglicherweise Ausnahmen) auf der Konsole ausgibt. Sie können dieses Verhalten zwar verhindern, indem Sie die folgende Eigenschaft in VM argumente Ihrer Debug-Konfiguration festlegen:
-Dvertx.options.blockedThreadCheckInterval=2147483647
Beachten Sie, dass Ihr Debugging in verschiedenen Szenarien Zeitüberschreitungen auslöst, z. B. einen Haltepunkt, der eine Antwort auf den Eventbus verzögert. Sie sehen Warnungen wie:
WARNING: Message reply handler timed out as no reply was received - it will be removed
Wenn Sie nicht aufpassen, kann dies natürlich andere Kontrollabläufe beim Debuggen als bei der tatsächlichen Ausführung bedeuten.
Meine Einstellung unten wird bei IntelliJ 15.0.1 mit vert.x 3.2.0 für Java vorgenommen
füge New Verticle hinzu wie:
public class HiVerticle extends AbstractVerticle {
@Override
public void start() throws Exception {
super.start();
System.out.println("Hi");
}}
'Ausführen' -> 'Konfigurationen bearbeiten ...' -> Ersetzen Sie 'Main class:' in ' io.vertx.core.Launcher ',
eingabe ' cchcc.hi.HiVerticle ' um ausführen 'Programmargumente:' -> 'OK'
Laufen und debuggen!
Ich würde vorschlagen, was Fran bereits angedeutet hat. Am besten erstellen Sie Ihr Maven-Projekt aus dem Archetyp ( http://vertx.io/maven_dev.html ), z
mvn archetype:generate -Dfilter=io.vertx: -DgroupId=your.group.id -DartifactId=your-artifact -Dversion=0.0.1-SNAPSHOT
und fügen Sie die IDE-Spezifikationen über maven hinzu, beispielsweise für Eclipse
mvn Eclipse:eclipse
Damit haben Sie ein einsatzbereites und einsatzbereites Projekt in Eclipse.
Um es dann wirklich zu starten, würde ich nicht direkt für eine Haupt- oder Starter-Ecke gehen, sondern es einfach als Munk in Eclipse ausführen, als neue Laufkonfiguration. Erstellen Sie eine neue Maven Run-Konfiguration und legen Sie sie als Ziele fest
clean compile vertx:runMod
Es startet die mod.json konfigurierte "Main" -Klasse.
Hinweis: clean compile ist nicht erforderlich, aber wenn Sie es einmal erstellen und Jars Ihres Projekts installiert haben, funktioniert die automatische Bereitstellung nicht mehr, da der Build statt des entwickelten Codes ausgewählt wird.
So haben Sie das Beispiel PingVerticle direkt ausgeführt und können auch herumalbern, wenn die automatische Neuverwendung in der mod.json aktiviert ist.
Wenn Sie dann weitere Konfigurationen usw. benötigen, können Sie mit Starter Verticles die Parameter bearbeiten oder sogar dem pom.xml vertx-maven-plugin hinzufügen.
Ich hoffe das hilft.
Beste
Wenn Sie neben dem Erstellen eines Maven-Projekts nach Optionen suchen (in den anderen Antworten vorgeschlagen), können Sie Folgendes tun: