Fix Automatic-Module-Name without hypens

Signed-off-by: Daniel Garnier-Moiroux <git@garnier.wf>
This commit is contained in:
Daniel Garnier-Moiroux 2026-09-16 17:35:36 +02:00 • committed by Daniel Garnier-Moiroux
commit 183935bf80
10 changed files with 76 additions and 3 deletions

View file

@ -21,6 +21,7 @@
</scm>
<properties>
<module.name>io.modelcontextprotocol.sdk.conformance.client.jdk</module.name>
<maven.deploy.skip>true</maven.deploy.skip>
</properties>

View file

@ -21,6 +21,7 @@
</scm>
<properties>
<module.name>io.modelcontextprotocol.sdk.conformance.client.spring</module.name>
<java.version>17</java.version>
<spring-boot.version>4.1.0</spring-boot.version>
<spring-ai.version>2.0.0</spring-ai.version>

View file

@ -21,6 +21,7 @@
</scm>
<properties>
<module.name>io.modelcontextprotocol.sdk.conformance.server.servlet</module.name>
<maven.deploy.skip>true</maven.deploy.skip>
</properties>

View file

@ -20,6 +20,10 @@
<developerConnection>scm:git:ssh://git@github.com/modelcontextprotocol/java-sdk.git</developerConnection>
</scm>
<properties>
<module.name>io.modelcontextprotocol.sdk.mcp.core</module.name>
</properties>
<build>
<plugins>
<plugin>
@ -37,7 +41,7 @@
Bundle-Name: Bundle ${project.groupId} : ${project.artifactId}
Bundle-SymbolicName: ${project.groupId}.${project.artifactId}
Bundle-Version: ${project.version}
Automatic-Module-Name: ${project.groupId}.${project.artifactId}
Automatic-Module-Name: ${module.name}
Import-Package: jakarta.*;resolution:=optional, \
*;
Service-Component: OSGI-INF/io.modelcontextprotocol.json.McpJsonDefaults.xml

View file

@ -20,6 +20,10 @@
<developerConnection>scm:git:ssh://git@github.com/modelcontextprotocol/java-sdk.git</developerConnection>
</scm>
<properties>
<module.name>io.modelcontextprotocol.sdk.mcp.json.jackson2</module.name>
</properties>
<build>
<plugins>
<plugin>
@ -37,7 +41,7 @@
Bundle-Name: Bundle ${project.groupId} : ${project.artifactId}
Bundle-SymbolicName: ${project.groupId}.${project.artifactId}
Bundle-Version: ${project.version}
Automatic-Module-Name: ${project.groupId}.${project.artifactId}
Automatic-Module-Name: ${module.name}
Bundle-ActivationPolicy: lazy
Import-Package: io.modelcontextprotocol.json,io.modelcontextprotocol.json.schema, \
*;

View file

@ -20,6 +20,10 @@
<developerConnection>scm:git:ssh://git@github.com/modelcontextprotocol/java-sdk.git</developerConnection>
</scm>
<properties>
<module.name>io.modelcontextprotocol.sdk.mcp.json.jackson3</module.name>
</properties>
<build>
<plugins>
<plugin>
@ -37,7 +41,7 @@
Bundle-Name: Bundle ${project.groupId} : ${project.artifactId}
Bundle-SymbolicName: ${project.groupId}.${project.artifactId}
Bundle-Version: ${project.version}
Automatic-Module-Name: ${project.groupId}.${project.artifactId}
Automatic-Module-Name: ${module.name}
Bundle-ActivationPolicy: lazy
Import-Package: io.modelcontextprotocol.json,io.modelcontextprotocol.json.schema, \
*;

View file

@ -20,6 +20,10 @@
<developerConnection>scm:git:ssh://git@github.com/modelcontextprotocol/java-sdk.git</developerConnection>
</scm>
<properties>
<module.name>io.modelcontextprotocol.sdk.mcp.test</module.name>
</properties>
<dependencies>
<dependency>
<groupId>io.modelcontextprotocol.sdk</groupId>

View file

@ -20,6 +20,30 @@
<developerConnection>scm:git:ssh://git@github.com/modelcontextprotocol/java-sdk.git</developerConnection>
</scm>
<properties>
<module.name>io.modelcontextprotocol.sdk.mcp</module.name>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<!-- module-info.java refers to the sibling modules by their JPMS names, and
those only exist once the siblings have been packaged as jars: before
the package phase the reactor hands the compiler bare target/classes
directories, which cannot be automatic modules. Compiling at
prepare-package keeps `mvn test` working on the full reactor. -->
<execution>
<id>java-compile</id>
<phase>prepare-package</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>

View file

@ -0,0 +1,25 @@
/*
* Copyright 2026 - 2026 the original author or authors.
*/
/**
* Aggregator module for the Java MCP SDK. Carries no code of its own; it exists so that
* consumers can depend on the SDK with a single {@code requires} directive.
*/
module io.modelcontextprotocol.sdk.mcp {
requires transitive io.modelcontextprotocol.sdk.mcp.core;
requires transitive io.modelcontextprotocol.sdk.mcp.json.jackson3;
// mcp-core and mcp-json-jackson3 are automatic modules, so they cannot pull their
// own dependencies into the module graph. Requiring them here spares consumers from
// having to repeat these declarations. Drop this block once the SDK modules carry
// their own module descriptors.
requires org.slf4j;
requires tools.jackson.databind;
requires com.networknt.schema;
}

View file

@ -59,6 +59,10 @@
<maven.compiler.target>17</maven.compiler.target>
<surefireArgLine />
<!-- JPMS module name. Every module that produces a jar must override this;
an empty value makes maven-jar-plugin fail, which is intentional. -->
<module.name />
<assert4j.version>3.27.6</assert4j.version>
<junit.version>6.0.2</junit.version>
<mockito.version>5.20.0</mockito.version>
@ -207,6 +211,7 @@
<manifestEntries>
<Implementation-Title>${project.artifactId}</Implementation-Title>
<Implementation-Version>${project.version}</Implementation-Version>
<Automatic-Module-Name>${module.name}</Automatic-Module-Name>
</manifestEntries>
</archive>
</configuration>