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.Starter
as 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?
You have to use this:
org.vertx.java.platform.impl.cli.Starter
as your Main Class in IntelliJ IDEA; and if you are using arguments and things like that you might want to use something like:runmod <groupId>~<artifactId>~<version> [-conf src/main/resources/your_config.json -cp]
Have a look at this project.
For Vert.x 3.0.0 you have to use this:
io.vertx.core.Starter
as your Main Class andrun com.example.other.AnyVerticle
as your Program arguments.I'm using vertx 3.2.1 and it's complaining about
io.vertx.core.Starter
. It's deprecated now. So, one should useio.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:
Logback:
You can simply add a main and use deployVerticle() and then from there in IntelliJ you can Run or Debug it easily. With deployVerticle, you can pass a new instance of your main/bootstrap verticle or you can pass yourMainVerticle.class
Ah, my mistake:
run com.example.MyVerticle
should be the value of Program arguments: and not as VM options in the IntelliJ IDEA Run configuration.Simply add this to your
MyVerticle
(or a separate class):Then simply
Ctrl+Shift+F10
to run it and IntelliJ will automatically create theRun Configuration
.