Vert.x in Action book examples
How to open and run the examples?
Readers of the book should directly open projects from subfolders: they are all independent.
You will find both Gradle and Maven build descriptors for each project, so you can load the projects with text editors or integrated development environments such as IntelliJ IDEA, Eclipse IDE or Microsoft Visual Studio Code.
As an example if you want to build the chapter 1 with Gradle, open a terminal and run:
$ cd chapter1 $ ./gradlew build
or with Maven run:
$ cd chapter1 $ mvn package
The book examples work best using some Unix environment: Linux, macOS or the Windows Subsystem for Linux from Microsoft.
What is the structure of the repository?
The following folders are available:
part2-steps-challenge(covers chapters 7 to 12)
master branch is where you must look for working examples.
Chapter 12 provides variants of the same code which you can get from the following branches:
Will there be updates?
The book went to production with Manning in August 2020.
This repository contains samples against Eclipse Vert.x 4.0.3 (see tag
vertx-4.0.3) that was released in March 2021.
At my own discretion I may update to newer versions of Vert.x when they are published.
Note that the Vert.x core team has made a goal of ensuring that Vert.x 4.0.3 will work against all examples in this repository.
Can I contribute?
Due to the nature of this project I will not accept any contribution to this repository.
What if I have a question / issue?
If you are a Manning customer then you have access to forums. Please refer to Vert.x in Action on the Manning website where a link to the forum is provided.
If you have a question on Vert.x then please get in touch with the Eclipse Vert.x community. There are several channels that you can use including public mailing-lists and chat.
If you have a problem with your book order or any special request, then please contact Manning.
Due to a peculiarities in how TestContainers supports Docker Compose it may be necessary to explicitly await for containers to be exposed, or test executions can sometimes fail because a container port hasn't been exposed yet.
This can be done by calling the
withExposedService method on a
DockerComposeContainer instance, as in:
@Container private static final DockerComposeContainer CONTAINERS = new DockerComposeContainer(new File("../docker-compose.yml")) .withExposedService("mongo_1", 27017);
This fix has been applied to the tests in