How do I start a simple Vert.x server from inside IntelliJ IDEA?
My build.gradle is as below:
apply plugin: 'java' version = '3.0.0' repositories { mavenCentral() } dependencies { compile 'io.vertx:vertx-core:3.0.0' } My Vertx-server, MyVertex.java is as below:
package com.example; import io.vertx.core.AbstractVerticle; import io.vertx.core.Future; public class MyVerticle extends AbstractVerticle { @Override public void start(Future<Void> fut) { vertx.createHttpServer() .requestHandler(r -> r.response().end("<h1>Hello</h1>")) .listen(8081); } } And my IntelliJ run configuration is as below, with io.vertx.core.Starteras main class: 
But when I run it with my run configuration I get this error message:
Error: Could not find or load main class run Is the VM option (in Run configuration) run something I need to install and add to my path or how do I get started with Vert.x-server development?
x website (vertx.io) says, “Eclipse Vert. x is a toolkit for building reactive applications on the JVM.” It is event-driven, single-threaded, and non-blocking, which means you can handle many concurrent apps with a small number of threads. (If you know how the Node. js event loop works, Vert.
I'm using vertx 3.2.1 and it's complaining about io.vertx.core.Starter. It's deprecated now. So, one should use io.vertx.core.Launcher.
This is an example of launching via intellij with the option of specifying a config JSON file:
io.vertx.core.Launcher <up to you, or leave blank> run com.app.verticle.MyVerticle -conf /path/to/my_config.json When using a logging framework it will be added in VM Options as below.
Log4j with either log4j or slf4j delgate:
-Dvertx.logger-delegate-factory-class-name=io.vertx.core.logging.Log4jLogDelegateFactory -Dlog4j.configuration=log4j.xml -Dvertx.logger-delegate-factory-class-name=io.vertx.core.logging.SLF4JLogDelegateFactory -Dlog4j.configuration=log4j.xml Logback:
-Dvertx.logger-delegate-factory-class-name=io.vertx.core.logging.SLF4JLogDelegateFactory -Dlogback.configurationFile=logback.xml
Simply add this to your MyVerticle (or a separate class):
import io.vertx.core.Launcher; ... public static void main(final String[] args) { Launcher.executeCommand("run", MyVerticle.class.getName()); } Then simply Ctrl+Shift+F10 to run it and IntelliJ will automatically create the Run Configuration.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With