Skip to content

Commit a2c3f4b

Browse files
committed
Use a module-info.java over module-info.yml using the patch-module trick.
1 parent b4163dc commit a2c3f4b

4 files changed

Lines changed: 147 additions & 124 deletions

File tree

vertx-core/pom.xml

Lines changed: 3 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -792,6 +792,9 @@
792792
</goals>
793793
<configuration>
794794
<release>21</release>
795+
<compilerArgs>
796+
<arg>--patch-module=io.vertx.core=${project.basedir}/target/classes</arg>
797+
</compilerArgs>
795798
<compileSourceRoots>
796799
<compileSourceRoot>${project.basedir}/src/main/java21</compileSourceRoot>
797800
</compileSourceRoots>
@@ -802,30 +805,6 @@
802805
</plugin>
803806
</plugins>
804807
</pluginManagement>
805-
<plugins>
806-
<plugin>
807-
<groupId>io.github.dmlloyd.module-info</groupId>
808-
<artifactId>module-info</artifactId>
809-
<version>2.2</version>
810-
<executions>
811-
<execution>
812-
<id>module-info</id>
813-
<phase>process-classes</phase>
814-
<goals>
815-
<goal>generate</goal>
816-
</goals>
817-
<configuration>
818-
<addPackages>false</addPackages>
819-
<addExports>false</addExports>
820-
<detectUses>false</detectUses>
821-
<detectProvides>false</detectProvides>
822-
<moduleInfoYml>src/main/java21/module-info.yml</moduleInfoYml>
823-
<outputDirectory>${project.build.outputDirectory}/META-INF/versions/21</outputDirectory>
824-
</configuration>
825-
</execution>
826-
</executions>
827-
</plugin>
828-
</plugins>
829808
</build>
830809
</profile>
831810

Lines changed: 143 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,143 @@
1+
module io.vertx.core {
2+
3+
requires io.vertx.core.logging;
4+
requires io.netty.buffer;
5+
requires io.netty.codec;
6+
requires io.netty.codec.compression;
7+
requires io.netty.codec.dns;
8+
requires io.netty.codec.http;
9+
requires io.netty.codec.http2;
10+
requires io.netty.codec.http3;
11+
requires io.netty.common;
12+
requires io.netty.handler;
13+
requires io.netty.handler.proxy;
14+
requires io.netty.resolver;
15+
requires io.netty.resolver.dns;
16+
requires io.netty.transport;
17+
requires java.compiler;
18+
requires java.logging;
19+
requires java.naming;
20+
21+
// Optional
22+
23+
requires static com.fasterxml.jackson.core;
24+
requires static com.fasterxml.jackson.databind;
25+
requires static tools.jackson.core;
26+
requires static io.netty.transport.classes.io_uring;
27+
requires static io.netty.transport.classes.epoll;
28+
requires static io.netty.transport.classes.kqueue;
29+
requires static io.netty.transport.unix.common;
30+
requires static io.netty.codec.haproxy;
31+
requires static io.netty.codec.classes.quic;
32+
33+
// Annotation processing
34+
35+
requires static io.vertx.codegen.api;
36+
requires static io.vertx.codegen.json;
37+
requires static io.vertx.docgen;
38+
39+
// Compile time only
40+
41+
requires static org.apache.logging.log4j;
42+
requires static org.slf4j;
43+
44+
// Uses
45+
46+
uses io.vertx.core.spi.VertxServiceProvider;
47+
uses io.vertx.core.spi.VerticleFactory;
48+
uses io.vertx.core.spi.JsonFactory;
49+
50+
// API
51+
52+
exports io.vertx.core;
53+
exports io.vertx.core.datagram;
54+
exports io.vertx.core.net;
55+
exports io.vertx.core.net.endpoint;
56+
exports io.vertx.core.json;
57+
exports io.vertx.core.json.jackson;
58+
exports io.vertx.core.json.pointer;
59+
exports io.vertx.core.json.jackson.v3;
60+
exports io.vertx.core.buffer;
61+
exports io.vertx.core.eventbus;
62+
exports io.vertx.core.shareddata;
63+
exports io.vertx.core.dns;
64+
exports io.vertx.core.http;
65+
exports io.vertx.core.parsetools;
66+
exports io.vertx.core.tracing;
67+
exports io.vertx.core.metrics;
68+
exports io.vertx.core.streams;
69+
exports io.vertx.core.spi;
70+
exports io.vertx.core.file;
71+
exports io.vertx.core.transport;
72+
73+
// SPI
74+
75+
exports io.vertx.core.spi.tracing;
76+
exports io.vertx.core.spi.metrics;
77+
exports io.vertx.core.spi.context.storage;
78+
exports io.vertx.core.spi.context.executor;
79+
exports io.vertx.core.spi.cluster;
80+
exports io.vertx.core.spi.file;
81+
exports io.vertx.core.spi.json;
82+
exports io.vertx.core.spi.observability;
83+
exports io.vertx.core.spi.endpoint;
84+
exports io.vertx.core.spi.transport;
85+
exports io.vertx.core.spi.tls;
86+
87+
// Internal API
88+
89+
exports io.vertx.core.internal;
90+
exports io.vertx.core.internal.http;
91+
exports io.vertx.core.internal.digest;
92+
exports io.vertx.core.internal.buffer;
93+
exports io.vertx.core.internal.net;
94+
exports io.vertx.core.internal.net.endpoint;
95+
exports io.vertx.core.internal.quic;
96+
exports io.vertx.core.internal.pool;
97+
exports io.vertx.core.internal.tls;
98+
exports io.vertx.core.internal.threadchecker;
99+
exports io.vertx.core.internal.concurrent;
100+
exports io.vertx.core.internal.resource;
101+
exports io.vertx.core.internal.streams;
102+
exports io.vertx.core.internal.deployment;
103+
exports io.vertx.core.internal.resolver;
104+
105+
// Jackson v3
106+
107+
exports io.vertx.core.json.impl to io.vertx.core.jacksonv3;
108+
109+
// Testing
110+
111+
exports io.vertx.core.impl to io.vertx.core.tests;
112+
exports io.vertx.core.impl.cpu to io.vertx.core.tests;
113+
exports io.vertx.core.impl.future to io.vertx.core.tests;
114+
exports io.vertx.core.impl.utils to io.vertx.core.tests;
115+
exports io.vertx.core.net.impl to io.vertx.core.tests;
116+
exports io.vertx.core.shareddata.impl to io.vertx.core.tests;
117+
exports io.vertx.core.buffer.impl to io.vertx.core.tests;
118+
exports io.vertx.core.streams.impl to io.vertx.core.tests;
119+
exports io.vertx.core.eventbus.impl to io.vertx.core.tests;
120+
exports io.vertx.core.eventbus.impl.clustered to io.vertx.core.tests;
121+
exports io.vertx.core.file.impl to io.vertx.core.tests;
122+
exports io.vertx.core.http.impl to io.vertx.core.tests;
123+
exports io.vertx.core.http.impl.headers to io.vertx.core.tests;
124+
exports io.vertx.core.http.impl.websocket to io.vertx.core.tests;
125+
exports io.vertx.core.json.pointer.impl to io.vertx.core.tests;
126+
exports io.vertx.core.impl.transports to io.vertx.core.tests;
127+
exports io.vertx.core.net.impl.pkcs1 to io.vertx.core.tests;
128+
exports io.vertx.core.eventbus.impl.clustered.selector to io.vertx.core.tests;
129+
exports io.vertx.core.impl.verticle to io.vertx.core.tests;
130+
exports io.vertx.core.impl.deployment to io.vertx.core.tests;
131+
exports io.vertx.core.impl.buffer to io.vertx.core.tests;
132+
exports io.vertx.core.http.impl.http2 to io.vertx.core.tests;
133+
exports io.vertx.core.http.impl.http2.codec to io.vertx.core.tests;
134+
exports io.vertx.core.net.impl.tcp to io.vertx.core.tests;
135+
exports io.vertx.core.net.impl.quic to io.vertx.core.tests;
136+
exports io.vertx.core.http.impl.http1 to io.vertx.core.tests;
137+
exports io.vertx.core.http.impl.http3 to io.vertx.core.tests;
138+
exports io.vertx.core.http.impl.observability to io.vertx.core.tests;
139+
exports io.vertx.core.net.endpoint.impl to io.vertx.core.tests;
140+
exports io.vertx.core.http.impl.tcp to io.vertx.core.tests;
141+
exports io.vertx.core.http.impl.quic to io.vertx.core.tests;
142+
143+
}

vertx-core/src/main/java21/module-info.yml

Lines changed: 0 additions & 99 deletions
This file was deleted.

vertx-core/src/test/java/module-info.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
open module io.vertx.core.tests {
55

6-
requires io.vertx.codegen.api;
6+
requires static io.vertx.codegen.api;
77
requires io.vertx.core;
88
requires io.vertx.core.logging;
99

0 commit comments

Comments
 (0)