diff --git a/CI/post-release.sh b/CI/post-release.sh
index 5867d730fb..3ae7aa9640 100755
--- a/CI/post-release.sh
+++ b/CI/post-release.sh
@@ -28,10 +28,6 @@ cd modules/swagger-bom
../../mvnw versions:commit
cd ../..
-cd modules/swagger-project-jakarta
-../../mvnw versions:set -DnewVersion="${SC_NEXT_VERSION}-SNAPSHOT"
-../../mvnw versions:commit
-cd ../..
#####################
### update all other versions in files around to the next snapshot or new release, including readme and gradle ###
diff --git a/CI/prepare-release.sh b/CI/prepare-release.sh
index 4a2e0876a6..4177ab600a 100755
--- a/CI/prepare-release.sh
+++ b/CI/prepare-release.sh
@@ -30,11 +30,6 @@ cd modules/swagger-bom
../../mvnw versions:commit
cd ../..
-cd modules/swagger-project-jakarta
-../../mvnw versions:set -DnewVersion=$SC_VERSION
-../../mvnw versions:commit
-cd ../..
-
#####################
### update all other versions in files around to the new release, including readme and gradle ###
diff --git a/README.md b/README.md
index ce691def42..56c392e380 100644
--- a/README.md
+++ b/README.md
@@ -2,15 +2,12 @@
**NOTE:** If you're looking for Swagger Core 1.5.X and OpenAPI 2.0, please refer to [1.5 branch](https://github.com/swagger-api/swagger-core/tree/1.5).
-**NOTE:** Since version 2.1.7, Swagger Core also supports the Jakarta namespace. There are a parallel set of artifacts with the `-jakarta` suffix, providing the same functionality as the unsuffixed (i.e.: `javax`) artifacts.
-Please see the [Wiki](https://github.com/swagger-api/swagger-core/wiki/Swagger-2.X---Getting-started) for more details.
-
**NOTE:** Since version 2.2.0 Swagger Core supports OpenAPI 3.1; see [this page](https://github.com/swagger-api/swagger-core/wiki/Swagger-2.X---OpenAPI-3.1) for details

[](https://maven-badges.herokuapp.com/maven-central/io.swagger.core.v3/swagger-project)
-Swagger Core is a Java implementation of the OpenAPI Specification. Current version supports *JAX-RS2* (`javax` and `jakarta` namespaces).
+Swagger Core is a Java implementation of the OpenAPI Specification. Current version supports *Jakarta RESTful Web Services* (`jakarta` namespace).
## Get started with Swagger Core!
See the guide on [getting started with Swagger Core](https://github.com/swagger-api/swagger-core/wiki/Swagger-2.X---Getting-started) to get started with adding Swagger to your API.
@@ -169,11 +166,11 @@ Of course if you don't want to build locally you can grab artifacts from maven c
### Maven BOM
-The `swagger-bom` artifact is a Bill of Materials that manages **both** the `javax` and Jakarta (`-jakarta` suffix) artifact families.
+The `swagger-bom` artifact is a Bill of Materials that manages all Swagger Core artifact versions.
Import it once and omit versions on all individual Swagger dependencies.
-> **Note:** Maven and Gradle build plugins (`swagger-maven-plugin`, `swagger-gradle-plugin`,
-> `swagger-eclipse-transformer-maven-plugin`) are intentionally **excluded** from the BOM.
+> **Note:** Maven and Gradle build plugins (`swagger-maven-plugin`, `swagger-gradle-plugin`)
+> are intentionally **excluded** from the BOM.
> Plugins are applied via `` or `plugins {}`, not via ``,
> so including them in the BOM would be misleading and could conflict with the plugin
> management section of a consumer's build.
@@ -195,7 +192,6 @@ Import it once and omit versions on all individual Swagger dependencies.
-
io.swagger.core.v3
swagger-annotations
@@ -216,43 +212,10 @@ Import it once and omit versions on all individual Swagger dependencies.
io.swagger.core.v3
swagger-jaxrs2
-
- io.swagger.core.v3
- swagger-jaxrs2-servlet-initializer
-
io.swagger.core.v3
swagger-jaxrs2-servlet-initializer-v2
-
-
- io.swagger.core.v3
- swagger-annotations-jakarta
-
-
- io.swagger.core.v3
- swagger-models-jakarta
-
-
- io.swagger.core.v3
- swagger-core-jakarta
-
-
- io.swagger.core.v3
- swagger-integration-jakarta
-
-
- io.swagger.core.v3
- swagger-jaxrs2-jakarta
-
-
- io.swagger.core.v3
- swagger-jaxrs2-servlet-initializer-jakarta
-
-
- io.swagger.core.v3
- swagger-jaxrs2-servlet-initializer-v2-jakarta
-
```
@@ -262,13 +225,9 @@ Import it once and omit versions on all individual Swagger dependencies.
dependencies {
implementation(platform("io.swagger.core.v3:swagger-bom:${swaggerOpenapiv3Version}"))
- // javax artifacts — no version needed
+ // no version needed
implementation("io.swagger.core.v3:swagger-annotations")
implementation("io.swagger.core.v3:swagger-core")
-
- // Jakarta namespace artifacts — no version needed
- implementation("io.swagger.core.v3:swagger-annotations-jakarta")
- implementation("io.swagger.core.v3:swagger-core-jakarta")
}
```
diff --git a/modules/swagger-bom-integration-test/pom.xml b/modules/swagger-bom-integration-test/pom.xml
index fdedcfe463..f060a22e33 100644
--- a/modules/swagger-bom-integration-test/pom.xml
+++ b/modules/swagger-bom-integration-test/pom.xml
@@ -38,7 +38,6 @@
Maven will fail if the BOM does not provide a version for any of these entries.
-->
-
io.swagger.core.v3
swagger-annotations
@@ -59,43 +58,10 @@
io.swagger.core.v3
swagger-jaxrs2
-
- io.swagger.core.v3
- swagger-jaxrs2-servlet-initializer
-
io.swagger.core.v3
swagger-jaxrs2-servlet-initializer-v2
-
-
- io.swagger.core.v3
- swagger-annotations-jakarta
-
-
- io.swagger.core.v3
- swagger-models-jakarta
-
-
- io.swagger.core.v3
- swagger-core-jakarta
-
-
- io.swagger.core.v3
- swagger-integration-jakarta
-
-
- io.swagger.core.v3
- swagger-jaxrs2-jakarta
-
-
- io.swagger.core.v3
- swagger-jaxrs2-servlet-initializer-jakarta
-
-
- io.swagger.core.v3
- swagger-jaxrs2-servlet-initializer-v2-jakarta
-
@@ -105,20 +71,6 @@
fast if any managed artifact cannot be downloaded or is missing
from the local repository after a full reactor install.
-->
-
-
- org.apache.maven.plugins
- maven-enforcer-plugin
-
-
- enforce-versions
-
- true
-
-
-
-
org.apache.maven.plugins
maven-dependency-plugin
diff --git a/modules/swagger-bom/pom.xml b/modules/swagger-bom/pom.xml
index 7b3a884629..348bbea4df 100644
--- a/modules/swagger-bom/pom.xml
+++ b/modules/swagger-bom/pom.xml
@@ -120,52 +120,11 @@
swagger-jaxrs2
${project.version}
-
- io.swagger.core.v3
- swagger-jaxrs2-servlet-initializer
- ${project.version}
-
io.swagger.core.v3
swagger-jaxrs2-servlet-initializer-v2
${project.version}
-
-
- io.swagger.core.v3
- swagger-annotations-jakarta
- ${project.version}
-
-
- io.swagger.core.v3
- swagger-models-jakarta
- ${project.version}
-
-
- io.swagger.core.v3
- swagger-core-jakarta
- ${project.version}
-
-
- io.swagger.core.v3
- swagger-integration-jakarta
- ${project.version}
-
-
- io.swagger.core.v3
- swagger-jaxrs2-jakarta
- ${project.version}
-
-
- io.swagger.core.v3
- swagger-jaxrs2-servlet-initializer-jakarta
- ${project.version}
-
-
- io.swagger.core.v3
- swagger-jaxrs2-servlet-initializer-v2-jakarta
- ${project.version}
-
diff --git a/modules/swagger-eclipse-transformer-maven-plugin/README.md b/modules/swagger-eclipse-transformer-maven-plugin/README.md
deleted file mode 100644
index 51bf0a7e78..0000000000
--- a/modules/swagger-eclipse-transformer-maven-plugin/README.md
+++ /dev/null
@@ -1,6 +0,0 @@
-Adapted from https://github.com/eclipse/transformer/blob/main/org.eclipse.transformer.maven
-not to add the transformed JAR as an attached artifact to the project.
-
-To be replaced with Eclipse original Transformer plugin when/if optional attachment is supported.
-
-
diff --git a/modules/swagger-eclipse-transformer-maven-plugin/pom.xml b/modules/swagger-eclipse-transformer-maven-plugin/pom.xml
deleted file mode 100644
index dce1afd077..0000000000
--- a/modules/swagger-eclipse-transformer-maven-plugin/pom.xml
+++ /dev/null
@@ -1,160 +0,0 @@
-
-
-
- io.swagger.core.v3
- swagger-project
- 3.0.0-SNAPSHOT
- ../..
-
- 4.0.0
- swagger-eclipse-transformer-maven-plugin
- swagger-eclipse-transformer-maven-plugin
- swagger-eclipse-transformer-maven-plugin
- maven-plugin
-
- 3.9.14
- 0.20
- 3.3.0
- 1.2.6
- 3.18.1
-
-
-
-
- org.apache.maven.plugins
- maven-enforcer-plugin
- ${enforcer-plugin-version}
-
- true
-
-
-
- org.apache.maven.plugins
- maven-jar-plugin
- 3.5.1
-
-
- org.apache.maven.plugins
- maven-plugin-plugin
- 3.15.2
-
- transform
-
-
-
-
-
-
- org.eclipse.transformer
- org.eclipse.transformer.cli
- 0.2.0
-
-
- javax.inject
- javax.inject
- 1
-
- compile
-
-
- org.apache.maven
- maven-plugin-api
- ${maven.target.version}
- provided
-
-
- org.codehaus.plexus
- plexus-utils
-
-
- org.codehaus.plexus
- plexus-component-annotations
-
-
- org.codehaus.plexus
- plexus-classworlds
-
-
-
-
- org.apache.maven
- maven-core
- ${maven.target.version}
- provided
-
-
- org.codehaus.plexus
- plexus-utils
-
-
-
-
- org.apache.maven.plugin-tools
- maven-plugin-annotations
- 3.15.1
- provided
-
-
- org.apache.maven
- maven-artifact
-
-
-
-
- org.codehaus.plexus
- plexus-archiver
- 4.10.0
- test
-
-
- org.codehaus.plexus
- plexus-utils
-
-
- org.apache.commons
- commons-compress
-
-
-
-
- org.codehaus.plexus
- plexus-utils
- 4.0.3
-
-
- org.codehaus.plexus
- plexus-component-annotations
- 2.2.0
-
-
- org.apache.maven
- maven-model
- ${maven.target.version}
- provided
-
-
- commons-cli
- commons-cli
- 1.11.0
-
-
- org.apache.maven
- maven-artifact
- ${maven.target.version}
- provided
-
-
- org.apache.maven
- maven-compat
- ${maven.target.version}
- provided
-
-
- org.codehaus.plexus
- plexus-utils
-
-
-
-
-
diff --git a/modules/swagger-eclipse-transformer-maven-plugin/src/main/java/io/swagger/v3/oas/transformer/TransformMojo.java b/modules/swagger-eclipse-transformer-maven-plugin/src/main/java/io/swagger/v3/oas/transformer/TransformMojo.java
deleted file mode 100644
index 667f320168..0000000000
--- a/modules/swagger-eclipse-transformer-maven-plugin/src/main/java/io/swagger/v3/oas/transformer/TransformMojo.java
+++ /dev/null
@@ -1,272 +0,0 @@
-package io.swagger.v3.oas.transformer;
-
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.io.PrintStream;
-import java.io.UnsupportedEncodingException;
-import java.nio.charset.StandardCharsets;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.function.Consumer;
-
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.plugin.AbstractMojo;
-import org.apache.maven.plugin.MojoFailureException;
-import org.apache.maven.plugins.annotations.Component;
-import org.apache.maven.plugins.annotations.LifecyclePhase;
-import org.apache.maven.plugins.annotations.Mojo;
-import org.apache.maven.plugins.annotations.Parameter;
-import org.apache.maven.plugins.annotations.ResolutionScope;
-import org.apache.maven.project.MavenProject;
-import org.apache.maven.project.MavenProjectHelper;
-import org.eclipse.transformer.Transformer;
-import org.eclipse.transformer.jakarta.JakartaTransformer;
-
-/**
- *
- * Adapted from https://github.com/eclipse/transformer/blob/main/org.eclipse.transformer.maven
- * not to add the transformed JAR as an attached artifact to the project.
- *
- * To be replaced with Eclipse original Transformer plugin when/if optional attachment is supported.
- *
- * This is a Maven plugin which runs the Eclipse Transformer on build artifacts
- * as part of the build.
- */
-@Mojo(name = "run", requiresDependencyResolution = ResolutionScope.RUNTIME_PLUS_SYSTEM, defaultPhase = LifecyclePhase.PACKAGE, requiresProject = true, threadSafe = true)
-public class TransformMojo extends AbstractMojo {
-
- @Parameter(defaultValue = "${project}", readonly = true, required = true)
- private MavenProject project;
-
- @Parameter(defaultValue = "false", property = "transformer-plugin.invert", required = true)
- private Boolean invert;
-
- @Parameter(defaultValue = "true", property = "transformer-plugin.overwrite", required = true)
- private Boolean overwrite;
-
- @Parameter(property = "transformer-plugin.renames", defaultValue = "")
- private String rulesRenamesUri;
-
- @Parameter(property = "transformer-plugin.versions", defaultValue = "")
- private String rulesVersionUri;
-
- @Parameter(property = "transformer-plugin.bundles", defaultValue = "")
- private String rulesBundlesUri;
-
- @Parameter(property = "transformer-plugin.direct", defaultValue = "")
- private String rulesDirectUri;
-
- @Parameter(property = "transformer-plugin.per-class-constant", defaultValue = "")
- private String rulesPerClassConstantUri;
-
- @Parameter(property = "transformer-plugin.xml", defaultValue = "")
- private String rulesXmlsUri;
-
- @Parameter(defaultValue = "transformed")
- private String classifier;
-
- private static final int MAX_LOG_BUFFER_SIZE = 16 * 1024;
-
- @Parameter(defaultValue = "${project.build.directory}", required = true)
- private File outputDirectory;
-
- @Parameter(defaultValue = "true", property = "transformer-plugin.attach", required = true)
- private Boolean attach;
-
- @Component
- private MavenProjectHelper projectHelper;
-
- /**
- * Main execution point of the plugin. This looks at the attached artifacts,
- * and runs the transformer on them.
- *
- * @throws MojoFailureException Thrown if there is an error during plugin
- * execution
- */
- @Override
- public void execute() throws MojoFailureException {
- final Transformer transformer = getTransformer();
-
- final Artifact[] sourceArtifacts = getSourceArtifacts();
- for (final Artifact sourceArtifact : sourceArtifacts) {
- transform(transformer, sourceArtifact);
- }
- }
-
- /**
- * This runs the transformation process on the source artifact with the
- * transformer provided. The transformed artifact is attached to the
- * project.
- *
- * @param transformer The Transformer to use for the transformation
- * @param sourceArtifact The Artifact to transform
- * @throws MojoFailureException if plugin execution fails
- */
- public void transform(final Transformer transformer, final Artifact sourceArtifact) throws MojoFailureException {
-
- final String sourceClassifier = sourceArtifact.getClassifier();
- final String targetClassifier = (sourceClassifier == null || sourceClassifier.length() == 0) ? this.classifier
- : sourceClassifier + "-" + this.classifier;
-
- final File targetFile = new File(outputDirectory, sourceArtifact.getArtifactId() + "-" + targetClassifier + "-"
- + sourceArtifact.getVersion() + "." + sourceArtifact.getType());
-
- final List args = new ArrayList<>();
- args.add(sourceArtifact.getFile()
- .getAbsolutePath());
- args.add(targetFile.getAbsolutePath());
-
- if (this.overwrite) {
- args.add("-o");
- }
-
- transformer.setArgs(args.toArray(new String[0]));
- int rc = transformer.run();
-
- if (rc != 0) {
- throw new MojoFailureException("Transformer failed with an error: " + Transformer.RC_DESCRIPTIONS[rc]);
- }
-
- if (attach) {
- projectHelper.attachArtifact(project, sourceArtifact.getType(), targetClassifier, targetFile);
- }
- }
-
- /**
- * Builds a configured transformer for the specified source and target
- * artifacts
- *
- * @return A configured transformer
- */
- public Transformer getTransformer() {
- final Transformer transformer = new Transformer(
- createLoggingPrintStream(getLog()::info),
- createLoggingPrintStream(getLog()::error));
- transformer.setOptionDefaults(JakartaTransformer.class, getOptionDefaults());
- return transformer;
- }
-
- /**
- * Gets the source artifacts that should be transformed
- *
- * @return an array to artifacts to be transformed
- */
- public Artifact[] getSourceArtifacts() {
- List artifactList = new ArrayList<>();
- if (project.getArtifact() != null && project.getArtifact()
- .getFile() != null) {
- artifactList.add(project.getArtifact());
- }
-
- for (final Artifact attachedArtifact : project.getAttachedArtifacts()) {
- if (attachedArtifact.getFile() != null) {
- artifactList.add(attachedArtifact);
- }
- }
-
- return artifactList.toArray(new Artifact[0]);
- }
-
- private Map getOptionDefaults() {
- Map optionDefaults = new HashMap<>();
- optionDefaults.put(Transformer.AppOption.RULES_RENAMES,
- isEmpty(rulesRenamesUri) ? "jakarta-renames.properties" : rulesRenamesUri);
- optionDefaults.put(Transformer.AppOption.RULES_VERSIONS,
- isEmpty(rulesVersionUri) ? "jakarta-versions.properties" : rulesVersionUri);
- optionDefaults.put(Transformer.AppOption.RULES_BUNDLES,
- isEmpty(rulesBundlesUri) ? "jakarta-bundles.properties" : rulesBundlesUri);
- optionDefaults.put(Transformer.AppOption.RULES_DIRECT,
- isEmpty(rulesDirectUri) ? "jakarta-direct.properties" : rulesDirectUri);
- optionDefaults.put(Transformer.AppOption.RULES_MASTER_TEXT,
- isEmpty(rulesXmlsUri) ? "jakarta-text-master.properties" : rulesXmlsUri);
- optionDefaults.put(Transformer.AppOption.RULES_PER_CLASS_CONSTANT,
- isEmpty(rulesPerClassConstantUri) ? "jakarta-per-class-constant-master.properties" : rulesPerClassConstantUri);
- return optionDefaults;
- }
-
- private PrintStream createLoggingPrintStream(Consumer logConsumer) {
- try {
- return new PrintStream(new LoggingOutputStream(logConsumer, MAX_LOG_BUFFER_SIZE), true, StandardCharsets.UTF_8.name());
- } catch (UnsupportedEncodingException e) {
- throw new IllegalStateException("UTF-8 encoding is not supported", e);
- }
- }
-
- private static final class LoggingOutputStream extends OutputStream {
- private final Consumer logConsumer;
- private final ByteArrayOutputStream buffer = new ByteArrayOutputStream();
- private final int maxBufferSize;
-
- private LoggingOutputStream(Consumer logConsumer, int maxBufferSize) {
- this.logConsumer = logConsumer;
- this.maxBufferSize = maxBufferSize > 0 ? maxBufferSize : Integer.MAX_VALUE;
- }
-
- @Override
- public void write(int b) {
- if (b == '\n') {
- flushBuffer();
- } else if (b != '\r') {
- buffer.write(b);
- if (buffer.size() >= this.maxBufferSize) {
- flushBuffer();
- }
- }
- }
-
- @Override
- public void flush() {
- flushBuffer();
- }
-
- @Override
- public void close() throws IOException {
- flushBuffer();
- }
-
- private void flushBuffer() {
- if (buffer.size() == 0) {
- return;
- }
- logConsumer.accept(new String(buffer.toByteArray(), StandardCharsets.UTF_8));
- buffer.reset();
- }
- }
-
- private boolean isEmpty(final String input) {
- return input == null || input.trim()
- .length() == 0;
- }
-
- void setProject(MavenProject project) {
- this.project = project;
- }
-
- void setClassifier(String classifier) {
- this.classifier = classifier;
- }
-
- MavenProjectHelper getProjectHelper() {
- return projectHelper;
- }
-
- void setProjectHelper(MavenProjectHelper projectHelper) {
- this.projectHelper = projectHelper;
- }
-
- void setOverwrite(Boolean overwrite) {
- this.overwrite = overwrite;
- }
-
- void setOutputDirectory(File outputDirectory) {
- this.outputDirectory = outputDirectory;
- }
-
- void setAttach(Boolean attach) {
- this.attach = attach;
- }
-}
diff --git a/modules/swagger-gradle-plugin/README.md b/modules/swagger-gradle-plugin/README.md
index cef7d0fe71..a3ccf3bd0e 100644
--- a/modules/swagger-gradle-plugin/README.md
+++ b/modules/swagger-gradle-plugin/README.md
@@ -2,23 +2,6 @@
**`swagger-gradle-plugin` supports gradle 3.2 and higher.**
-## Jakarta namespace support
-
-Since version 2.1.7 Swagger Core supports also Jakarta namespace, with a parallel set of artifacts with `-jakarta` suffix, providing the same functionality as the "standard" `javax` namespace ones.
-Please check [Wiki](https://github.com/swagger-api/swagger-core/wiki/Swagger-2.X---Getting-started) for more details
-
-To have gradle plugin use the `jakarta` namespace artifacts, you need to provide a value to parameter `buildClasspath`
-In many cases it is sufficient to set it to the `classpath` value, like:
-
-`buildClasspath = classpath`
-
-Alternatively provide as value a classpath with the following dependencies (replacing the provided [`javax` ones](https://github.com/swagger-api/swagger-core/blob/master/modules/swagger-gradle-plugin/src/main/java/io/swagger/v3/plugins/gradle/SwaggerPlugin.java#L16-L25)):
-
-* org.apache.commons:commons-lang3:3.20.0
-* io.swagger.core.v3:swagger-jaxrs2-jakarta:2.2.9
-* jakarta.ws.rs:jakarta.ws.rs-api:3.0.0
-* jakarta.servlet:jakarta.servlet-api:5.0.0
-
## Installation
diff --git a/modules/swagger-jaxrs2-servlet-initializer/pom.xml b/modules/swagger-jaxrs2-servlet-initializer/pom.xml
deleted file mode 100644
index 16dcd648e5..0000000000
--- a/modules/swagger-jaxrs2-servlet-initializer/pom.xml
+++ /dev/null
@@ -1,189 +0,0 @@
-
-
-
- swagger-project
- io.swagger.core.v3
- 3.0.0-SNAPSHOT
- ../../
-
- 4.0.0
- swagger-jaxrs2-servlet-initializer
- swagger-jaxrs2-servlet-initializer
- swagger-servlet-initializer
-
- src/main/java
- install
-
-
- src/test/resources
-
-
-
-
- biz.aQute.bnd
- bnd-maven-plugin
-
-
- Export-Package: io.swagger.v3.jaxrs2.integration
-
-
-
-
- org.apache.maven.plugins
- maven-jar-plugin
-
-
- ${project.build.outputDirectory}/META-INF/MANIFEST.MF
-
- io.swagger.v3.jaxrs2.integration
-
-
-
-
-
- org.codehaus.mojo
- build-helper-maven-plugin
- 3.6.1
-
-
- jetty.port
- jetty.port.stop
-
-
-
-
- reserve-port
- pre-integration-test
-
- reserve-network-port
-
-
-
-
-
- org.apache.maven.plugins
- maven-failsafe-plugin
- ${failsafe-plugin-version}
-
-
-
- integration-test
- verify
-
-
-
- ${jetty.port}
-
-
-
-
-
-
- org.eclipse.jetty
- jetty-maven-plugin
-
- 10
- ${jetty.port}
- a
- ${jetty.port.stop}
- true
- ${project.basedir}/src/test/webapp
-
-
-
- io.swagger.core.v3
- swagger-jaxrs2
- ${project.version}
-
-
-
-
- start-jetty
- pre-integration-test
-
- start
-
-
- 0
-
-
-
- stop-jetty
- post-integration-test
-
- stop
-
-
-
-
-
-
-
-
-
- jakarta.ws.rs
- jakarta.ws.rs-api
- provided
-
-
- jakarta.servlet
- jakarta.servlet-api
- provided
-
-
- ch.qos.logback
- logback-classic
- provided
-
-
- ch.qos.logback
- logback-core
- provided
-
-
- io.swagger.core.v3
- swagger-jaxrs2
- ${project.version}
- provided
-
-
- org.testng
- testng
- test
-
-
- io.rest-assured
- rest-assured
- test
-
-
- javax.xml.bind
- jaxb-api
-
-
- org.apache.httpcomponents
- httpmime
-
-
-
-
- org.mockito
- mockito-core
- test
-
-
- org.glassfish.jersey.core
- jersey-server
- ${jersey2-version}
- test
-
-
- org.javassist
- javassist
-
-
-
-
-
diff --git a/modules/swagger-jaxrs2-servlet-initializer/src/main/java/io/swagger/v3/jaxrs2/integration/SwaggerServletInitializer.java b/modules/swagger-jaxrs2-servlet-initializer/src/main/java/io/swagger/v3/jaxrs2/integration/SwaggerServletInitializer.java
deleted file mode 100644
index 3f269cfe6a..0000000000
--- a/modules/swagger-jaxrs2-servlet-initializer/src/main/java/io/swagger/v3/jaxrs2/integration/SwaggerServletInitializer.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package io.swagger.v3.jaxrs2.integration;
-
-import io.swagger.v3.oas.annotations.OpenAPIDefinition;
-import io.swagger.v3.oas.annotations.Webhooks;
-import io.swagger.v3.oas.integration.IgnoredPackages;
-import io.swagger.v3.oas.integration.OpenApiConfigurationException;
-import io.swagger.v3.oas.integration.SwaggerConfiguration;
-
-import javax.servlet.ServletContainerInitializer;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
-import javax.servlet.annotation.HandlesTypes;
-import javax.ws.rs.ApplicationPath;
-import javax.ws.rs.Path;
-import java.util.HashSet;
-import java.util.LinkedHashSet;
-import java.util.Set;
-import java.util.stream.Collectors;
-
-/**
- * deprecated since 2.1.2. Please use io.swagger.v3.jaxrs2.integration.SwaggerServletInitializer in
- * swagger-jaxrs2-servlet-initializer-v2
- */
-@Deprecated
-@HandlesTypes({Path.class, OpenAPIDefinition.class, ApplicationPath.class, Webhooks.class})
-public class SwaggerServletInitializer implements ServletContainerInitializer {
-
- static final Set ignored = new HashSet();
-
- static {
- ignored.addAll(IgnoredPackages.ignored);
- }
-
- public SwaggerServletInitializer() {
- }
-
- @Override
- public void onStartup(Set> classes, ServletContext servletContext) throws ServletException {
- if (classes != null && ! classes.isEmpty()) {
- Set> resources = new LinkedHashSet();
- classes.stream()
- .filter(c -> ignored.stream().noneMatch(i -> c.getName().startsWith(i)))
- .forEach(resources::add);
- if (!resources.isEmpty()) {
- // init context
- try {
- SwaggerConfiguration oasConfig = new SwaggerConfiguration()
- .resourceClasses(resources.stream().map(Class::getName).collect(Collectors.toSet()));
-
- new JaxrsOpenApiContextBuilder()
- .openApiConfiguration(oasConfig)
- .buildContext(true);
- } catch (OpenApiConfigurationException e) {
- throw new RuntimeException(e.getMessage(), e);
- }
- }
- }
- }
-
-}
diff --git a/modules/swagger-jaxrs2-servlet-initializer/src/main/resources/META-INF/services/javax.servlet.ServletContainerInitializer b/modules/swagger-jaxrs2-servlet-initializer/src/main/resources/META-INF/services/javax.servlet.ServletContainerInitializer
deleted file mode 100644
index 97230a2efb..0000000000
--- a/modules/swagger-jaxrs2-servlet-initializer/src/main/resources/META-INF/services/javax.servlet.ServletContainerInitializer
+++ /dev/null
@@ -1 +0,0 @@
-io.swagger.v3.jaxrs2.integration.SwaggerServletInitializer
\ No newline at end of file
diff --git a/modules/swagger-maven-plugin/README.md b/modules/swagger-maven-plugin/README.md
index 4d7648e9c1..014d4b922c 100644
--- a/modules/swagger-maven-plugin/README.md
+++ b/modules/swagger-maven-plugin/README.md
@@ -4,17 +4,8 @@
All parameters except `outputFileName`, `outputFormat`, `skip`, `encoding` and `outputPath` correspond
to `swagger` [configuration property](https://github.com/swagger-api/swagger-core/wiki/Swagger-2.X---Integration-and-Configuration#configuration-properties) with same name.
-## Jakarta namespace support
-
-Since version 2.1.7 Swagger Core supports also Jakarta namespace, with a parallel set of artifacts with `-jakarta` suffix, providing the same functionality as the "standard" `javax` namespace ones.
-Please check [Wiki](https://github.com/swagger-api/swagger-core/wiki/Swagger-2.X---Getting-started) for more details
-
-Both `javax` and `jakarta` examples are provided below
-
## Configuration example
-### `javax` namespace
-
```xml
@@ -22,7 +13,7 @@ Both `javax` and `jakarta` examples are provided below
io.swagger.core.v3
swagger-maven-plugin
- 2.2.55
+ 3.0.0-SNAPSHOT
openapi
${project.build.directory}/generatedtest
@@ -47,69 +38,18 @@ Both `javax` and `jakarta` examples are provided below
io.swagger.core.v3
swagger-jaxrs2
- 2.2.55
-
-
-
- javax.ws.rs
- javax.ws.rs-api
- 2.1
-
-
- javax.servlet
- javax.servlet-api
- 3.1.0
-
-
-
-```
-
-### `jakarta` namespace
-
-```xml
-
-
-
-
- io.swagger.core.v3
- swagger-maven-plugin-jakarta
- 2.2.55
-
- openapi
- ${project.build.directory}/generatedtest
- JSONANDYAML
-
- test.petstore
-
- TRUE
-
-
-
- compile
-
- resolve
-
-
-
-
-
-
-
-
- io.swagger.core.v3
- swagger-jaxrs2-jakarta
- 2.2.55
+ 3.0.0-SNAPSHOT
jakarta.ws.rs
jakarta.ws.rs-api
- 3.0.0
+ 2.1.6
jakarta.servlet
jakarta.servlet-api
- 5.0.0
+ 4.0.4
@@ -117,8 +57,6 @@ Both `javax` and `jakarta` examples are provided below
## Configuration example with provided Swagger configuration file
-### `javax` namespace
-
```xml
@@ -126,36 +64,7 @@ Both `javax` and `jakarta` examples are provided below
io.swagger.core.v3
swagger-maven-plugin
- 2.2.55
-
- openapi
- ${project.build.directory}/generatedtest
- ${project.basedir}/src/main/resources/configurationFile.yaml
-
-
-
- compile
-
- resolve
-
-
-
-
-
-
- ...
- ```
-
-### `jakarta` namespace
-
- ```xml
-
-
-
-
- io.swagger.core.v3
- swagger-maven-plugin-jakarta
- 2.2.55
+ 3.0.0-SNAPSHOT
openapi
${project.build.directory}/generatedtest
diff --git a/modules/swagger-maven-plugin/pom.xml b/modules/swagger-maven-plugin/pom.xml
index 351957e631..539d278837 100644
--- a/modules/swagger-maven-plugin/pom.xml
+++ b/modules/swagger-maven-plugin/pom.xml
@@ -31,25 +31,6 @@
maven-plugin-plugin
3.15.2
-
- io.swagger.core.v3
- swagger-eclipse-transformer-maven-plugin
- ${project.version}
-
- false
- jakarta
- ${project.basedir}/../swagger-project-jakarta/modules/${project.artifactId}-jakarta/transformed
-
-
-
- transform-jakarta
-
- run
-
- package
-
-
-
diff --git a/modules/swagger-project-jakarta/.gitignore b/modules/swagger-project-jakarta/.gitignore
deleted file mode 100644
index d5ece13ddc..0000000000
--- a/modules/swagger-project-jakarta/.gitignore
+++ /dev/null
@@ -1,18 +0,0 @@
-build/
-lib/*.jar
-target
-.idea
-.idea_modules
-.settings
-.project
-.classpath
-.cache
-atlassian-ide-plugin.xml
-*.iml
-.java-version
-sonar-project.properties
-test-output/
-*.pyc
-**/transformed/*.jar
-**/transformed/*.test-jar
-**/transformed/*.maven-plugin
diff --git a/modules/swagger-project-jakarta/modules/swagger-annotations-jakarta/pom.xml b/modules/swagger-project-jakarta/modules/swagger-annotations-jakarta/pom.xml
deleted file mode 100644
index 2d7b4ecf52..0000000000
--- a/modules/swagger-project-jakarta/modules/swagger-annotations-jakarta/pom.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-
-
- io.swagger.core.v3
- swagger-project-jakarta
- 3.0.0-SNAPSHOT
- ../..
-
- 4.0.0
- swagger-annotations-jakarta
- swagger-annotations-jakarta
- swagger-annotations-jakarta
-
-
-
-
- org.eclipse.transformer
- transformer-maven-plugin
- ${transformer-maven-plugin-version}
- true
-
-
- true
-
- ${project.build.finalName}-jakarta
-
-
-
- default-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-annotations
- ${project.version}
-
-
-
-
- javadoc-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-annotations
- ${project.version}
- javadoc
-
-
-
-
- source-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-annotations
- ${project.version}
- sources
-
-
-
-
-
-
-
-
diff --git a/modules/swagger-project-jakarta/modules/swagger-core-jakarta/pom.xml b/modules/swagger-project-jakarta/modules/swagger-core-jakarta/pom.xml
deleted file mode 100644
index 3d65e4461e..0000000000
--- a/modules/swagger-project-jakarta/modules/swagger-core-jakarta/pom.xml
+++ /dev/null
@@ -1,135 +0,0 @@
-
-
- io.swagger.core.v3
- swagger-project-jakarta
- 3.0.0-SNAPSHOT
- ../..
-
- 4.0.0
- swagger-core-jakarta
- swagger-core-jakarta
- swagger-core-jakarta
-
-
-
-
- org.eclipse.transformer
- transformer-maven-plugin
- ${transformer-maven-plugin-version}
- true
-
-
- true
-
- ${project.build.finalName}-jakarta
-
-
-
- default-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-core
- ${project.version}
-
-
-
-
- javadoc-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-core
- ${project.version}
- javadoc
-
-
-
-
- source-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-core
- ${project.version}
- sources
-
-
-
-
-
-
-
-
-
-
- org.apache.commons
- commons-lang3
-
-
- org.slf4j
- slf4j-api
-
-
- ch.qos.logback
- logback-classic
- provided
-
-
- ch.qos.logback
- logback-core
- provided
-
-
- commons-io
- commons-io
-
-
-
-
- io.swagger.core.v3
- swagger-annotations-jakarta
- ${project.parent.version}
-
-
- io.swagger.core.v3
- swagger-models-jakarta
- ${project.parent.version}
-
-
- jakarta.xml.bind
- jakarta.xml.bind-api
-
-
- jakarta.validation
- jakarta.validation-api
-
-
-
-
- com.fasterxml.jackson.core
- jackson-annotations
-
-
- tools.jackson.core
- jackson-databind
- ${jackson-version}
-
-
- tools.jackson.dataformat
- jackson-dataformat-yaml
- ${jackson-version}
-
-
-
diff --git a/modules/swagger-project-jakarta/modules/swagger-integration-jakarta/pom.xml b/modules/swagger-project-jakarta/modules/swagger-integration-jakarta/pom.xml
deleted file mode 100644
index 8273678608..0000000000
--- a/modules/swagger-project-jakarta/modules/swagger-integration-jakarta/pom.xml
+++ /dev/null
@@ -1,95 +0,0 @@
-
-
- io.swagger.core.v3
- swagger-project-jakarta
- 3.0.0-SNAPSHOT
- ../..
-
- 4.0.0
- swagger-integration-jakarta
- swagger-integration-jakarta
- swagger-integration-jakarta
-
-
-
-
- org.eclipse.transformer
- transformer-maven-plugin
- ${transformer-maven-plugin-version}
- true
-
-
- true
-
- ${project.build.finalName}-jakarta
-
-
-
- default-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-integration
- ${project.version}
-
-
-
-
- javadoc-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-integration
- ${project.version}
- javadoc
-
-
-
-
- source-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-integration
- ${project.version}
- sources
-
-
-
-
-
-
-
-
-
-
- io.github.classgraph
- classgraph
-
-
-
- io.swagger.core.v3
- swagger-core-jakarta
- ${project.version}
-
-
- io.swagger.core.v3
- swagger-models-jakarta
- ${project.version}
-
-
-
-
-
-
diff --git a/modules/swagger-project-jakarta/modules/swagger-jaxrs2-jakarta/pom.xml b/modules/swagger-project-jakarta/modules/swagger-jaxrs2-jakarta/pom.xml
deleted file mode 100644
index 102e8d11c5..0000000000
--- a/modules/swagger-project-jakarta/modules/swagger-jaxrs2-jakarta/pom.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-
-
- io.swagger.core.v3
- swagger-project-jakarta
- 3.0.0-SNAPSHOT
- ../..
-
- 4.0.0
- swagger-jaxrs2-jakarta
- swagger-jaxrs2-jakarta
- swagger-jaxrs2-jakarta
-
-
-
-
- org.eclipse.transformer
- transformer-maven-plugin
- ${transformer-maven-plugin-version}
- true
-
-
- true
-
- ${project.build.finalName}-jakarta
-
-
-
- default-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-jaxrs2
- ${project.version}
-
-
-
-
- javadoc-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-jaxrs2
- ${project.version}
- javadoc
-
-
-
-
- source-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-jaxrs2
- ${project.version}
- sources
-
-
-
-
-
-
-
-
-
-
- ch.qos.logback
- logback-classic
- provided
-
-
- ch.qos.logback
- logback-core
- provided
-
-
- io.github.classgraph
- classgraph
-
-
- org.javassist
- javassist
- 3.30.2-GA
-
-
- commons-io
- commons-io
-
-
-
- io.swagger.core.v3
- swagger-models-jakarta
- ${project.version}
-
-
- io.swagger.core.v3
- swagger-annotations-jakarta
- ${project.version}
-
-
- io.swagger.core.v3
- swagger-integration-jakarta
- ${project.version}
-
-
- jakarta.ws.rs
- jakarta.ws.rs-api
- provided
-
-
- jakarta.servlet
- jakarta.servlet-api
- provided
-
-
-
- tools.jackson.core
- jackson-databind
- ${jackson-version}
-
-
- tools.jackson.jakarta.rs
- jackson-jakarta-rs-json-provider
- ${jackson-version}
-
-
-
-
diff --git a/modules/swagger-project-jakarta/modules/swagger-jaxrs2-servlet-initializer-jakarta/pom.xml b/modules/swagger-project-jakarta/modules/swagger-jaxrs2-servlet-initializer-jakarta/pom.xml
deleted file mode 100644
index 4a2c6c4f5e..0000000000
--- a/modules/swagger-project-jakarta/modules/swagger-jaxrs2-servlet-initializer-jakarta/pom.xml
+++ /dev/null
@@ -1,105 +0,0 @@
-
-
- io.swagger.core.v3
- swagger-project-jakarta
- 3.0.0-SNAPSHOT
- ../..
-
- 4.0.0
- swagger-jaxrs2-servlet-initializer-jakarta
- swagger-jaxrs2-servlet-initializer-jakarta
- swagger-jaxrs2-servlet-initializer-jakarta
-
-
-
-
- org.eclipse.transformer
- transformer-maven-plugin
- ${transformer-maven-plugin-version}
- true
-
-
- true
-
- ${project.build.finalName}-jakarta
-
-
-
- default-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-jaxrs2-servlet-initializer
- ${project.version}
-
-
-
-
- javadoc-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-jaxrs2-servlet-initializer
- ${project.version}
- javadoc
-
-
-
-
- source-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-jaxrs2-servlet-initializer
- ${project.version}
- sources
-
-
-
-
-
-
-
-
-
-
- ch.qos.logback
- logback-classic
- provided
-
-
- ch.qos.logback
- logback-core
- provided
-
-
-
- io.swagger.core.v3
- swagger-jaxrs2-jakarta
- ${project.version}
- provided
-
-
-
- jakarta.ws.rs
- jakarta.ws.rs-api
- provided
-
-
- jakarta.servlet
- jakarta.servlet-api
- provided
-
-
-
diff --git a/modules/swagger-project-jakarta/modules/swagger-jaxrs2-servlet-initializer-v2-jakarta/pom.xml b/modules/swagger-project-jakarta/modules/swagger-jaxrs2-servlet-initializer-v2-jakarta/pom.xml
deleted file mode 100644
index c5ba14c7cf..0000000000
--- a/modules/swagger-project-jakarta/modules/swagger-jaxrs2-servlet-initializer-v2-jakarta/pom.xml
+++ /dev/null
@@ -1,105 +0,0 @@
-
-
- io.swagger.core.v3
- swagger-project-jakarta
- 3.0.0-SNAPSHOT
- ../..
-
- 4.0.0
- swagger-jaxrs2-servlet-initializer-v2-jakarta
- swagger-jaxrs2-servlet-initializer-v2-jakarta
- swagger-jaxrs2-servlet-initializer-v2-jakarta
-
-
-
-
- org.eclipse.transformer
- transformer-maven-plugin
- ${transformer-maven-plugin-version}
- true
-
-
- true
-
- ${project.build.finalName}-jakarta
-
-
-
- default-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-jaxrs2-servlet-initializer-v2
- ${project.version}
-
-
-
-
- javadoc-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-jaxrs2-servlet-initializer-v2
- ${project.version}
- javadoc
-
-
-
-
- source-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-jaxrs2-servlet-initializer-v2
- ${project.version}
- sources
-
-
-
-
-
-
-
-
-
-
- ch.qos.logback
- logback-classic
- provided
-
-
- ch.qos.logback
- logback-core
- provided
-
-
-
- io.swagger.core.v3
- swagger-jaxrs2-jakarta
- ${project.version}
- provided
-
-
-
- jakarta.ws.rs
- jakarta.ws.rs-api
- provided
-
-
- jakarta.servlet
- jakarta.servlet-api
- provided
-
-
-
diff --git a/modules/swagger-project-jakarta/modules/swagger-maven-plugin-jakarta/pom.xml b/modules/swagger-project-jakarta/modules/swagger-maven-plugin-jakarta/pom.xml
deleted file mode 100644
index aaf2b4ec7e..0000000000
--- a/modules/swagger-project-jakarta/modules/swagger-maven-plugin-jakarta/pom.xml
+++ /dev/null
@@ -1,248 +0,0 @@
-
-
- io.swagger.core.v3
- swagger-project-jakarta
- 3.0.0-SNAPSHOT
- ../..
-
- 4.0.0
- swagger-maven-plugin-jakarta
- maven-plugin
- swagger-maven-plugin-jakarta
- swagger-maven-plugin-jakarta
-
-
-
-
- org.apache.maven.plugins
- maven-dependency-plugin
- 3.11.0
-
-
- get-original-artifacts
- generate-resources
-
- copy
-
-
-
-
-
- io.swagger.core.v3
- swagger-maven-plugin
- ${project.version}
- sources
- jar
- ${project.build.directory}
- ${project.artifactId}-${project.version}-sources.jar
-
-
-
- io.swagger.core.v3
- swagger-maven-plugin
- ${project.version}
- javadoc
- jar
- ${project.build.directory}
- ${project.artifactId}-${project.version}-javadoc.jar
-
-
-
-
-
-
-
- com.coderplus.maven.plugins
- copy-rename-maven-plugin
- 1.0.1
-
-
- copy-file
- compile
-
- rename
-
-
- true
- true
- ${project.basedir}/transformed/${project.artifactId}-${project.version}.maven-plugin
- ${project.basedir}/transformed/${project.artifactId}-${project.version}.jar
-
-
-
-
-
- maven-resources-plugin
-
- 3.1.0
-
-
- copy-resources
- package
-
- copy-resources
-
-
- ${project.build.directory}
- true
-
-
- transformed
- false
-
- ${project.artifactId}-${project.version}.jar
-
-
-
-
-
-
-
-
- org.codehaus.mojo
- exec-maven-plugin
- 1.6.0
-
-
- package
-
- java
-
-
- io.swagger.v3.plugin.maven.jakarta.JakartaTransformer
-
- ${project.build.directory}/${project.artifactId}-${project.version}.jar
- ${project.build.directory}/transformertemp
- ${jakarta.ws-version}
- ${jakarta.activation-api-version}
- ${jackson-version}
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-plugin-plugin
- 3.15.2
-
-
- true
- swagger
-
-
-
- mojo-descriptor
-
- descriptor
-
-
-
-
-
- org.codehaus.mojo
- build-helper-maven-plugin
- 3.6.1
-
-
- attach-artifacts
- package
-
- attach-artifact
-
-
-
-
- ${project.build.directory}/${project.artifactId}-${project.version}-sources.jar
- jar
- sources
-
-
- ${project.build.directory}/${project.artifactId}-${project.version}-javadoc.jar
- jar
- javadoc
-
-
-
-
-
-
-
-
-
-
-
- org.apache.maven
- maven-plugin-api
- ${maven.version}
- provided
-
-
- org.codehaus.plexus
- plexus-utils
-
-
- org.codehaus.plexus
- plexus-component-annotations
-
-
- org.codehaus.plexus
- plexus-classworlds
-
-
-
-
- org.apache.maven
- maven-core
- ${maven.version}
- provided
-
-
- org.codehaus.plexus
- plexus-utils
-
-
-
-
- org.apache.maven.plugin-tools
- maven-plugin-annotations
- 3.15.1
- provided
-
-
- org.apache.maven
- maven-artifact
-
-
-
-
- org.apache.commons
- commons-lang3
- ${commons-lang-version}
-
-
- org.codehaus.plexus
- plexus-utils
- 3.6.1
-
-
- org.codehaus.plexus
- plexus-component-annotations
- 2.2.0
-
-
-
- io.swagger.core.v3
- swagger-jaxrs2-jakarta
- ${project.version}
-
-
-
-
-
- UTF-8
- 3.9.16
-
-
diff --git a/modules/swagger-project-jakarta/modules/swagger-maven-plugin-jakarta/src/main/java/io/swagger/v3/plugin/maven/jakarta/JakartaTransformer.java b/modules/swagger-project-jakarta/modules/swagger-maven-plugin-jakarta/src/main/java/io/swagger/v3/plugin/maven/jakarta/JakartaTransformer.java
deleted file mode 100644
index 1a6b97b712..0000000000
--- a/modules/swagger-project-jakarta/modules/swagger-maven-plugin-jakarta/src/main/java/io/swagger/v3/plugin/maven/jakarta/JakartaTransformer.java
+++ /dev/null
@@ -1,365 +0,0 @@
-package io.swagger.v3.plugin.maven.jakarta;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.BufferedInputStream;
-import java.io.BufferedReader;
-import java.io.BufferedWriter;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.OutputStream;
-import java.io.OutputStreamWriter;
-import java.io.PrintWriter;
-import java.net.URI;
-import java.nio.file.CopyOption;
-import java.nio.file.FileSystem;
-import java.nio.file.FileSystems;
-import java.nio.file.FileVisitResult;
-import java.nio.file.Files;
-import java.nio.file.LinkOption;
-import java.nio.file.Path;
-import java.nio.file.Paths;
-import java.nio.file.SimpleFileVisitor;
-import java.nio.file.StandardCopyOption;
-import java.nio.file.attribute.BasicFileAttributes;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-import java.util.stream.Collectors;
-import java.util.stream.Stream;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipInputStream;
-import java.util.zip.ZipOutputStream;
-
-/**
- * Transforms swagger-maven-plugin jar file to be used with Jakarta namespace using artifactId swagger-maven-plugin-jakarta
- *
- */
-public class JakartaTransformer {
-
- private static final Logger LOGGER = LoggerFactory.getLogger(JakartaTransformer.class);
-
-
- /*
- * Substitution tokens + regex
- */
- private static Set files =
- Stream.of(
- // "META-INF/MANIFEST.MF",
- "META-INF/maven/plugin.xml",
- "META-INF/maven/io.swagger.core.v3/swagger-maven-plugin/plugin-help.xml",
- // "META-INF/plexus/components.xml",
- "META-INF/maven/io.swagger.core.v3/swagger-maven-plugin/pom.xml",
- "META-INF/maven/io.swagger.core.v3/swagger-maven-plugin/pom.properties")
- .collect(Collectors.toCollection(HashSet::new));
-
- private static final String jakartaXmlBindDep = "\n" +
- " jakarta.xml.bind\n" +
- " jakarta.xml.bind-api\n" +
- " VERSION\n" +
- " \n";
-
- private static final String jakartaXmlBindRegex = "^.*(.*jakarta\\.xml\\.bind((?!).)*).*$";
-
- private static final String jakartaValidationDep = "\n" +
- " jakarta.validation\n" +
- " jakarta.validation-api\n" +
- " VERSION\n" +
- " \n";
-
- private static final String jakartaValidationRegex = "^.*(.*jakarta\\.validation((?!).)*).*$";
-
- private static final String jacksonJsonDep = "\n" +
- " tools.jackson.jakarta.rs\n" +
- " jackson-jakarta-rs-json-provider\n" +
- " VERSION\n" +
- " \n" +
- " \n" +
- " jakarta.activation\n" +
- " jakarta.activation-api\n" +
- " \n" +
- " \n" +
- " jakarta.xml.bind\n" +
- " jakarta.xml.bind-api\n" +
- " \n" +
- " \n" +
- " ";
-
- private static final String jacksonJsonRegex = "^.*(.*jackson\\-jaxrs\\-json((?!).)*).*$";
-
- private static final String jacksonBaseDep = "\n" +
- " tools.jackson.jakarta.rs\n" +
- " jackson-jakarta-rs-base\n" +
- " VERSION\n" +
- " ";
-
- private static final String jacksonBaseRegex = "^.*(.*jackson\\-jaxrs\\-base((?!).)*).*$";
-
- private static final String jacksonJaxbDep = "\n" +
- " tools.jackson.module\n" +
- " jackson-module-jakarta-xmlbind-annotations\n" +
- " VERSION\n" +
- " \n" +
- " \n" +
- " jakarta.activation\n" +
- " jakarta.activation-api\n" +
- " \n" +
- " \n" +
- " jakarta.xml.bind\n" +
- " jakarta.xml.bind-api\n" +
- " \n" +
- " \n" +
- " com.sun.activation\n" +
- " jakarta.activation\n" +
- " " +
- " \n" +
- " ";
-
- private static final String jacksonJaxbRegex = "^.*(.*jackson\\-module\\-jaxb((?!).)*).*$";
-
- private static final String jakartaActivationDep = "\n" +
- " jakarta.activation\n" +
- " jakarta.activation-api\n" +
- " VERSION\n" +
- " ";
-
- private static final String jakartaActivationRegex = "^.*(.*jakarta\\.activation((?!).)*).*$";
-
- /**
- *
- * Extracts Jar into temp directory
- *
- */
- private static void extract(String inPath, String outPath) throws Exception {
-
- Path target = Paths.get(outPath);
- Path source = Paths.get(inPath);
-
- try (ZipInputStream zis = new ZipInputStream(new FileInputStream(source.toFile()))) {
- ZipEntry zipEntry = zis.getNextEntry();
-
- while (zipEntry != null) {
- Path path = target.resolve(zipEntry.getName()).normalize();
-
- if (!path.startsWith(target + File.separator)) {
- throw new IOException("Entry is outside of the target dir: " + zipEntry.getName());
- }
-
- if (zipEntry.isDirectory()) {
- if (!Files.isDirectory(path)) {
- Files.createDirectories(path);
- }
- } else {
- // fix for Windows-created archives
- Path parent = path.getParent();
- if (!Files.isDirectory(parent)) {
- Files.createDirectories(parent);
- }
-
- // write file content
- try (OutputStream os = Files.newOutputStream(path)) {
- byte[] buffer = new byte[1024];
- int len;
- while ((len = zis.read(buffer)) > 0) {
- os.write(buffer, 0, len);
- }
- }
- }
- zipEntry = zis.getNextEntry();
- }
- zis.closeEntry();
- }
- }
-
- /**
- *
- * Compress temp directory back into Jar after transformed
- *
- */
- public static void jar(Path sourcePath, String outJarPath) throws IOException {
-
- URI uri = URI.create("jar:" + Paths.get(outJarPath).normalize().toUri());
-
- Files.walkFileTree(sourcePath, new SimpleFileVisitor() {
- @Override
- public FileVisitResult visitFile(Path file,
- BasicFileAttributes attributes) {
-
- if (attributes.isSymbolicLink()) {
- return FileVisitResult.CONTINUE;
- }
-
- Map env = new HashMap<>();
- env.put("create", "true");
-
- try (FileSystem zipfs = FileSystems.newFileSystem(uri, env)) {
-
- Path targetFile = sourcePath.relativize(file);
- Path pathInZipfile = zipfs.getPath(targetFile.toString());
-
- if (pathInZipfile.getParent() != null) {
- Files.createDirectories(pathInZipfile.getParent());
- }
-
- CopyOption[] options = {
- StandardCopyOption.REPLACE_EXISTING,
- StandardCopyOption.COPY_ATTRIBUTES,
- LinkOption.NOFOLLOW_LINKS
- };
- Files.copy(file, pathInZipfile, options);
-
- } catch (IOException e) {
- LOGGER.error("Error copying file '{}' into ZIP filesystem", file, e);
- }
-
- return FileVisitResult.CONTINUE;
- }
-
- @Override
- public FileVisitResult visitFileFailed(Path file, IOException exc) {
- //
- return FileVisitResult.CONTINUE;
- }
-
- });
-
- }
-
- /**
- *
- * Replaces swagger artifact adding `-jakarta` suffix
- *
- */
- private static void replaceInJar(String filePath) throws Exception {
- try (FileInputStream fis = new FileInputStream(filePath);
- BufferedInputStream bis = new BufferedInputStream(fis);
- ZipInputStream zis = new ZipInputStream(bis);
- ZipOutputStream out = new ZipOutputStream(new FileOutputStream(filePath + ".jar"))) {
-
- for (ZipEntry zipEntry; (zipEntry = zis.getNextEntry()) != null; ) {
- out.putNextEntry(new ZipEntry(zipEntry.getName()));
-
- if (files.contains(zipEntry.getName())) {
- BufferedReader reader = new BufferedReader(new InputStreamReader(zis));
- PrintWriter writer = new PrintWriter(new BufferedWriter(new OutputStreamWriter(out)));
- for (String line; (line = reader.readLine()) != null; ) {
- line = line.replace("swagger-maven-plugin", "swagger-maven-plugin-jakarta");
- line = line.replace("swagger-project", "swagger-project-jakarta");
- line = line.replace("swagger-jaxrs2", "swagger-jaxrs2-jakarta");
- line = line.replace("swagger-models", "swagger-models-jakarta");
- line = line.replace("swagger-annotations", "swagger-annotations-jakarta");
- line = line.replace("swagger-core", "swagger-core-jakarta");
- line = line.replace("swagger-integration", "swagger-integration-jakarta");
- writer.println(line);
- }
- writer.flush();
- } else {
- byte[] buf = new byte[8192];
- int length;
- while ((length = zis.read(buf)) > 0) {
- out.write(buf, 0, length);
- }
- }
-
- }
- }
- Files.delete(Paths.get(filePath));
- Files.move(Paths.get(filePath + ".jar"), Paths.get(filePath));
-
- }
-
- public static void main(String[] args) throws Exception {
- String filePath = args[0];
- String outPath = args[1];
- String jakartaVersion = args[2];
- String jakartaActivationVersion = args[3];
- String jacksonVersion = args[4];
-
- replaceInJar(filePath);
- extract(filePath, outPath);
-
- // rename dir
- Files.move(Paths.get(outPath + File.separator +
- "META-INF" + File.separator +
- "maven" + File.separator +
- "io.swagger.core.v3" + File.separator +
- "swagger-maven-plugin"),
- Paths.get(outPath + File.separator +
- "META-INF" + File.separator +
- "maven" + File.separator +
- "io.swagger.core.v3" + File.separator +
- "swagger-maven-plugin-jakarta")
- );
-
- Path pluginXmlPath = Paths.get(
- outPath +
- File.separator + "META-INF" +
- File.separator + "maven" +
- File.separator + "plugin.xml");
- String pluginXml = new String(Files.readAllBytes(pluginXmlPath));
- Matcher m = Pattern.compile(jakartaXmlBindRegex, Pattern.DOTALL).matcher(pluginXml);
- while (m.find()) {
- pluginXml = pluginXml.substring(m.start(), m.start(1)) +
- jakartaXmlBindDep.replace("VERSION", jakartaVersion) +
- pluginXml.substring(m.end(1), m.end());
- }
-
- m = Pattern.compile(jakartaValidationRegex, Pattern.DOTALL).matcher(pluginXml);
- while (m.find()) {
- pluginXml = pluginXml.substring(m.start(), m.start(1)) +
- jakartaValidationDep.replace("VERSION", jakartaVersion) +
- pluginXml.substring(m.end(1), m.end());
- }
-
- m = Pattern.compile(jacksonJsonRegex, Pattern.DOTALL).matcher(pluginXml);
- while (m.find()) {
- pluginXml = pluginXml.substring(m.start(), m.start(1)) +
- jacksonJsonDep.replace("VERSION", jacksonVersion) +
- pluginXml.substring(m.end(1), m.end());
- }
-
- m = Pattern.compile(jacksonBaseRegex, Pattern.DOTALL).matcher(pluginXml);
- while (m.find()) {
- pluginXml = pluginXml.substring(m.start(), m.start(1)) +
- jacksonBaseDep.replace("VERSION", jacksonVersion) +
- pluginXml.substring(m.end(1), m.end());
- }
-
- m = Pattern.compile(jacksonJaxbRegex, Pattern.DOTALL).matcher(pluginXml);
- while (m.find()) {
- pluginXml = pluginXml.substring(m.start(), m.start(1)) +
- jacksonJaxbDep.replace("VERSION", jacksonVersion) +
- pluginXml.substring(m.end(1), m.end());
- }
-
- m = Pattern.compile(jakartaActivationRegex, Pattern.DOTALL).matcher(pluginXml);
- while (m.find()) {
- pluginXml = pluginXml.substring(m.start(), m.start(1)) +
- jakartaActivationDep.replace("VERSION", jakartaActivationVersion) +
- pluginXml.substring(m.end(1), m.end());
- }
-
- // write back to plugin.xml file
- Files.write(pluginXmlPath, pluginXml.getBytes());
-
- // delete the original jar
- Files.delete(Paths.get(filePath));
- // compress the new jar
- jar(Paths.get(outPath), filePath);
- // delete the temp directory
- Files.walk(Paths.get(outPath))
- .sorted(Comparator.reverseOrder())
- .map(Path::toFile)
- .forEach(File::delete);
-
- }
-
-}
diff --git a/modules/swagger-project-jakarta/modules/swagger-maven-plugin-jakarta/transformed/README.md b/modules/swagger-project-jakarta/modules/swagger-maven-plugin-jakarta/transformed/README.md
deleted file mode 100644
index e96b3ae207..0000000000
--- a/modules/swagger-project-jakarta/modules/swagger-maven-plugin-jakarta/transformed/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-#### Don't delete
-
-Target directory for eclipse transformer plugin; Jakarta EE 9+ artifacts are generated in this directory
diff --git a/modules/swagger-project-jakarta/modules/swagger-models-jakarta/pom.xml b/modules/swagger-project-jakarta/modules/swagger-models-jakarta/pom.xml
deleted file mode 100644
index c589c07595..0000000000
--- a/modules/swagger-project-jakarta/modules/swagger-models-jakarta/pom.xml
+++ /dev/null
@@ -1,81 +0,0 @@
-
-
- io.swagger.core.v3
- swagger-project-jakarta
- 3.0.0-SNAPSHOT
- ../..
-
- 4.0.0
- swagger-models-jakarta
- swagger-models-jakarta
- swagger-models-jakarta
-
-
-
-
- org.eclipse.transformer
- transformer-maven-plugin
- ${transformer-maven-plugin-version}
- true
-
-
- true
-
- ${project.build.finalName}-jakarta
-
-
-
- default-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-models
- ${project.version}
-
-
-
-
- javadoc-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-models
- ${project.version}
- javadoc
-
-
-
-
- source-jar
-
- jar
-
-
-
- ${project.groupId}
- swagger-models
- ${project.version}
- sources
-
-
-
-
-
-
-
-
-
-
- com.fasterxml.jackson.core
- jackson-annotations
-
-
-
diff --git a/modules/swagger-project-jakarta/pom.xml b/modules/swagger-project-jakarta/pom.xml
deleted file mode 100644
index 306ec5fce0..0000000000
--- a/modules/swagger-project-jakarta/pom.xml
+++ /dev/null
@@ -1,517 +0,0 @@
-
- 4.0.0
- io.swagger.core.v3
- swagger-project-jakarta
- pom
- swagger-project-jakarta
- swagger-project-jakarta
- 3.0.0-SNAPSHOT
- https://github.com/swagger-api/swagger-core
-
- scm:git:git@github.com:swagger-api/swagger-core.git
- scm:git:git@github.com:swagger-api/swagger-core.git
- https://github.com/swagger-api/swagger-core
-
-
- 2.2.0
-
-
-
- frantuma
- Francesco Tumanischvili
- frantuma@yahoo.com
-
-
-
- github
- https://github.com/swagger-api/swagger-core/issues
-
-
-
- swagger-swaggersocket
- https://groups.google.com/forum/#!forum/swagger-swaggersocket
-
-
-
-
- Apache License 2.0
- http://www.apache.org/licenses/LICENSE-2.0.html
- repo
-
-
-
- install
- target
- ${project.artifactId}-${project.version}
-
-
- META-INF
- ../../../..
- true
-
- NOTICE
- LICENSE
-
-
-
-
-
- maven-compiler-plugin
- 3.14.1
-
-
- org.apache.maven.plugins
- maven-enforcer-plugin
- ${enforcer-plugin-version}
-
-
- enforce-versions
-
- enforce
-
-
-
-
-
-
- org.yaml:snakeyaml
-
- Use org.snakeyaml:snakeyaml-engine (via jackson-dataformat-yaml). Classic org.yaml:snakeyaml is not compatible with Jackson 3.
-
-
- true
- No Snapshots Allowed!
-
-
- (,2.1.0),(2.1.0,2.2.0),(2.2.0,)
- Maven 2.1.0 and 2.2.0 produce incorrect GPG signatures and checksums respectively.
-
-
- [17,)
- Java 17 or higher is required.
-
-
-
-
-
-
-
- maven-dependency-plugin
-
-
- copy-deps
- package
-
- copy-dependencies
-
-
- ${project.build.directory}/lib
-
-
-
-
-
- org.sonatype.central
- central-publishing-maven-plugin
- 0.11.0
- true
-
- central
- true
- published
- 3600
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-gpg-plugin
- 1.6
-
-
-
- --pinentry-mode
- loopback
-
-
-
-
- org.eclipse.jetty
- jetty-maven-plugin
- ${jetty-version}
-
-
- org.glassfish.jersey.core
- jersey-server
- ${jersey2-version}
-
-
- org.javassist
- javassist
-
-
-
-
- org.glassfish.jersey.containers
- jersey-container-servlet
- ${jersey2-version}
-
-
- org.javassist
- javassist
-
-
-
-
- org.glassfish.jersey.media
- jersey-media-multipart
- ${jersey2-version}
-
-
- org.javassist
- javassist
-
-
-
-
- org.glassfish.jersey.inject
- jersey-hk2
- ${jersey2-version}
-
-
- org.javassist
- javassist
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-enforcer-plugin
- ${enforcer-plugin-version}
-
-
-
-
-
-
- release
-
-
-
- org.apache.maven.plugins
- maven-gpg-plugin
- 1.6
-
-
-
- --pinentry-mode
- loopback
-
-
-
-
- sign-artifacts
- verify
-
- sign
-
-
-
-
-
-
-
-
-
- modules/swagger-annotations-jakarta
- modules/swagger-models-jakarta
- modules/swagger-core-jakarta
- modules/swagger-integration-jakarta
- modules/swagger-jaxrs2-jakarta
- modules/swagger-jaxrs2-servlet-initializer-jakarta
- modules/swagger-jaxrs2-servlet-initializer-v2-jakarta
- modules/swagger-maven-plugin-jakarta
-
-
-
- target/site
-
-
- org.apache.maven.plugins
- maven-javadoc-plugin
- ${maven-javadoc-plugin-version}
-
- 17
- UTF-8
- 1g
- true
-
- https://docs.oracle.com/en/java/javase/17/docs/api
-
-
-
-
-
- aggregate
- false
-
- aggregate
-
-
-
-
-
- org.apache.maven.plugins
- maven-jxr-plugin
- 2.5
-
-
- aggregate
-
- aggregate
-
-
-
-
-
- org.apache.maven.plugins
- maven-project-info-reports-plugin
- 2.9
-
-
-
- project-team
-
-
-
-
-
-
-
-
-
- org.apache.maven
- maven-plugin-tools-api
- 3.5.1
-
-
- org.slf4j
- slf4j-api
- ${slf4j-version}
- compile
-
-
- org.slf4j
- slf4j-ext
- ${slf4j-version}
- compile
-
-
- org.slf4j
- slf4j-log4j12
- ${slf4j-version}
- provided
-
-
- org.apache.commons
- commons-lang3
- ${commons-lang-version}
- compile
-
-
- org.apache.httpcomponents
- httpclient
- ${httpcomponents-version}
-
-
- commons-io
- commons-io
- ${commons-io-version}
- test
-
-
- io.github.classgraph
- classgraph
- ${classgraph-version}
-
-
- ch.qos.logback
- logback-classic
- ${logback-version}
- provided
-
-
- ch.qos.logback
- logback-core
- ${logback-version}
- provided
-
-
- joda-time
- joda-time
- ${joda-time-version}
-
-
- org.joda
- joda-convert
- ${joda-version}
-
-
-
-
-
- jakarta.servlet
- jakarta.servlet-api
- ${servlet-api-version}
- provided
-
-
-
- jakarta.xml.bind
- jakarta.xml.bind-api
- ${jakarta.xml.bind-api-version}
-
-
- jakarta.activation
- jakarta.activation-api
- ${jakarta.activation-api-version}
-
-
- jakarta.ws.rs
- jakarta.ws.rs-api
- ${jakarta.ws-version}
-
-
- jakarta.validation
- jakarta.validation-api
- ${jakarta.validation-version}
-
-
-
-
-
- com.fasterxml.jackson.core
- jackson-annotations
- ${jackson-annotations-version}
-
-
- tools.jackson.core
- jackson-core
- ${jackson-version}
-
-
- tools.jackson.core
- jackson-databind
- ${jackson-version}
-
-
- jakarta.activation
- jakarta.activation-api
-
-
- jakarta.xml.bind
- jakarta.xml.bind-api
-
-
-
-
- tools.jackson.dataformat
- jackson-dataformat-yaml
- ${jackson-version}
-
-
- tools.jackson.jakarta.rs
- jackson-jakarta-rs-json-provider
- ${jackson-version}
-
-
- jakarta.activation
- jakarta.activation-api
-
-
- jakarta.xml.bind
- jakarta.xml.bind-api
-
-
-
-
- tools.jackson.jakarta.rs
- jackson-jakarta-rs-base
- ${jackson-version}
-
-
- tools.jackson.module
- jackson-module-jakarta-xmlbind-annotations
- ${jackson-version}
-
-
- jakarta.activation
- jakarta.activation-api
-
-
- jakarta.xml.bind
- jakarta.xml.bind-api
-
-
- com.sun.activation
- jakarta.activation
-
-
-
-
-
- com.google.guava
- guava
- ${guava-version}
- test
-
-
-
-
- 17
- 2.2.4
- 2.13.0
- 3.1.0
- 3.0.2
- 3.0.1
- 2.1.3
- 6.4.0
- 5.0.0
- 3.1.12
- 2.22
- 3.2.2
- 1.6.3
- 4.8.192
- 32.1.3-jre
- 1.10.15
- 3.20.0
- 2.18.0
- 2.0.18
- 9.4.56.v20240826g
- 7.9.0
- 2.28.2
- 4.5.1
- 4.5.14
- 1.17.2
-
- 3.5.6
- 3.2.1
- 2.22.2
- 3.12.0
-
- 0.90
- 0.90
- 0
-
- UTF-8
- 2026-08-31T09:02:30Z
- 0.5.0
- 3.9.14
- 1.27.1
-
-
diff --git a/pom.xml b/pom.xml
index 034f0912c7..64076bacfe 100644
--- a/pom.xml
+++ b/pom.xml
@@ -405,12 +405,9 @@
modules/swagger-core
modules/swagger-integration
modules/swagger-jaxrs2
- modules/swagger-jaxrs2-servlet-initializer
modules/swagger-jaxrs2-servlet-initializer-v2
modules/swagger-bom
modules/swagger-maven-plugin
- modules/swagger-eclipse-transformer-maven-plugin
- modules/swagger-project-jakarta
@@ -661,7 +658,7 @@
0.90
0.90
0
- 0.5.0
+
UTF-8
2026-08-31T09:02:19Z