swagger-maven-plugin
swagger-maven-plugin copied to clipboard
Missing class javax.servlet.ServletConfig
<plugin>
<groupId>io.openapitools.swagger</groupId>
<artifactId>swagger-maven-plugin</artifactId>
<version>2.1.2</version>
<configuration>
<outputPath>${basedir}/src/openapi/</outputPath>
<outputFileName>cc-${api.version}</outputFileName>
<outputFormat>JSONANDYAML</outputFormat>
<prettyPrint>TRUE</prettyPrint>
<attachSwaggerArtifact>true</attachSwaggerArtifact>
<resourceClasses>
<resourceClasse>com.siemens.spice.cc.rest.service.ConfigurationController</resourceClasse>
<resourceClasse>com.siemens.spice.cc.rest.service.HistoryController</resourceClasse>
<resourceClasse>com.siemens.spice.cc.rest.service.SettingsController</resourceClasse>
<resourceClasse>com.siemens.spice.cc.rest.service.ProductsController</resourceClasse>
</resourceClasses>
</configuration>
<executions>
<execution>
<phase>process-classes</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
``´
[ERROR] Failed to execute goal io.openapitools.swagger:swagger-maven-plugin:2.1.2:generate (default) on project rest-service: Execution default of goal io.openapitools.swagger:swagger-maven-plugin:2.1.2:generate failed: A required class was missing while executing io.openapitools.swagger:swagger-maven-plugin:2.1.2:generate: Ljavax/servlet/ServletConfig;
[ERROR] -----------------------------------------------------
[ERROR] realm = plugin>io.openapitools.swagger:swagger-maven-plugin:2.1.2
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] = file:/D:/Dev/ApacheMaven/repository/io/openapitools/swagger/swagger-maven-plugin/2.1.2/swagger-maven-plugin-2.1.2.jar
[ERROR] urls[1] = file:/D:/Dev/ApacheMaven/repository/io/swagger/core/v3/swagger-jaxrs2/2.1.0/swagger-jaxrs2-2.1.0.jar
[ERROR] urls[2] = file:/D:/Dev/ApacheMaven/repository/io/github/classgraph/classgraph/4.6.32/classgraph-4.6.32.jar
[ERROR] urls[3] = file:/D:/Dev/ApacheMaven/repository/org/javassist/javassist/3.22.0-GA/javassist-3.22.0-GA.jar
[ERROR] urls[4] = file:/D:/Dev/ApacheMaven/repository/io/swagger/core/v3/swagger-models/2.1.0/swagger-models-2.1.0.jar
[ERROR] urls[5] = file:/D:/Dev/ApacheMaven/repository/io/swagger/core/v3/swagger-annotations/2.1.0/swagger-annotations-2.1.0.jar
[ERROR] urls[6] = file:/D:/Dev/ApacheMaven/repository/io/swagger/core/v3/swagger-integration/2.1.0/swagger-integration-2.1.0.jar
[ERROR] urls[7] = file:/D:/Dev/ApacheMaven/repository/io/swagger/core/v3/swagger-core/2.1.0/swagger-core-2.1.0.jar
[ERROR] urls[8] = file:/D:/Dev/ApacheMaven/repository/com/fasterxml/jackson/dataformat/jackson-dataformat-yaml/2.10.1/jackson-dataformat-yaml-2.10.1.jar
[ERROR] urls[9] = file:/D:/Dev/ApacheMaven/repository/org/yaml/snakeyaml/1.24/snakeyaml-1.24.jar
[ERROR] urls[10] = file:/D:/Dev/ApacheMaven/repository/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.10.1/jackson-datatype-jsr310-2.10.1.jar
[ERROR] urls[11] = file:/D:/Dev/ApacheMaven/repository/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final.jar
[ERROR] urls[12] = file:/D:/Dev/ApacheMaven/repository/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.10.1/jackson-jaxrs-json-provider-2.10.1.jar
[ERROR] urls[13] = file:/D:/Dev/ApacheMaven/repository/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.10.1/jackson-jaxrs-base-2.10.1.jar
[ERROR] urls[14] = file:/D:/Dev/ApacheMaven/repository/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.10.1/jackson-module-jaxb-annotations-2.10.1.jar
[ERROR] urls[15] = file:/D:/Dev/ApacheMaven/repository/jakarta/xml/bind/jakarta.xml.bind-api/2.3.2/jakarta.xml.bind-api-2.3.2.jar
[ERROR] urls[16] = file:/D:/Dev/ApacheMaven/repository/jakarta/activation/jakarta.activation-api/1.2.1/jakarta.activation-api-1.2.1.jar
[ERROR] urls[17] = file:/D:/Dev/ApacheMaven/repository/javax/ws/rs/javax.ws.rs-api/2.1/javax.ws.rs-api-2.1.jar
[ERROR] urls[18] = file:/D:/Dev/ApacheMaven/repository/org/apache/maven/plugin-tools/maven-plugin-annotations/3.5/maven-plugin-annotations-3.5.jar
[ERROR] urls[19] = file:/D:/Dev/ApacheMaven/repository/javax/enterprise/cdi-api/1.0/cdi-api-1.0.jar
[ERROR] urls[20] = file:/D:/Dev/ApacheMaven/repository/org/codehaus/plexus/plexus-utils/3.1.0/plexus-utils-3.1.0.jar
[ERROR] urls[21] = file:/D:/Dev/ApacheMaven/repository/org/codehaus/plexus/plexus-interpolation/1.25/plexus-interpolation-1.25.jar
[ERROR] urls[22] = file:/D:/Dev/ApacheMaven/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.4/plexus-sec-dispatcher-1.4.jar
[ERROR] urls[23] = file:/D:/Dev/ApacheMaven/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
[ERROR] urls[24] = file:/D:/Dev/ApacheMaven/repository/org/apache/maven/maven-builder-support/3.6.0/maven-builder-support-3.6.0.jar
[ERROR] urls[25] = file:/D:/Dev/ApacheMaven/repository/org/apache/maven/resolver/maven-resolver-util/1.3.1/maven-resolver-util-1.3.1.jar
[ERROR] urls[26] = file:/D:/Dev/ApacheMaven/repository/org/apache/maven/shared/maven-shared-utils/3.2.1/maven-shared-utils-3.2.1.jar
[ERROR] urls[27] = file:/D:/Dev/ApacheMaven/repository/commons-io/commons-io/2.5/commons-io-2.5.jar
[ERROR] urls[28] = file:/D:/Dev/ApacheMaven/repository/org/eclipse/sisu/org.eclipse.sisu.inject/0.3.3/org.eclipse.sisu.inject-0.3.3.jar
[ERROR] urls[29] = file:/D:/Dev/ApacheMaven/repository/com/google/inject/guice/4.2.1/guice-4.2.1-no_aop.jar
[ERROR] urls[30] = file:/D:/Dev/ApacheMaven/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar
[ERROR] urls[31] = file:/D:/Dev/ApacheMaven/repository/org/codehaus/plexus/plexus-component-annotations/1.7.1/plexus-component-annotations-1.7.1.jar
[ERROR] urls[32] = file:/D:/Dev/ApacheMaven/repository/org/apache/commons/commons-lang3/3.8.1/commons-lang3-3.8.1.jar
[ERROR] urls[33] = file:/D:/Dev/ApacheMaven/repository/org/reflections/reflections/0.9.11/reflections-0.9.11.jar
[ERROR] urls[34] = file:/D:/Dev/ApacheMaven/repository/javax/xml/bind/jaxb-api/2.3.0/jaxb-api-2.3.0.jar
[ERROR] urls[35] = file:/D:/Dev/ApacheMaven/repository/com/fasterxml/jackson/core/jackson-databind/2.10.1/jackson-databind-2.10.1.jar
[ERROR] urls[36] = file:/D:/Dev/ApacheMaven/repository/com/fasterxml/jackson/core/jackson-annotations/2.10.1/jackson-annotations-2.10.1.jar
[ERROR] urls[37] = file:/D:/Dev/ApacheMaven/repository/com/fasterxml/jackson/core/jackson-core/2.10.1/jackson-core-2.10.1.jar
[ERROR] urls[38] = file:/D:/Dev/ApacheMaven/repository/com/google/guava/guava/28.1-jre/guava-28.1-jre.jar
[ERROR] urls[39] = file:/D:/Dev/ApacheMaven/repository/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar
[ERROR] urls[40] = file:/D:/Dev/ApacheMaven/repository/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar
[ERROR] urls[41] = file:/D:/Dev/ApacheMaven/repository/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar
[ERROR] urls[42] = file:/D:/Dev/ApacheMaven/repository/org/checkerframework/checker-qual/2.8.1/checker-qual-2.8.1.jar
[ERROR] urls[43] = file:/D:/Dev/ApacheMaven/repository/com/google/errorprone/error_prone_annotations/2.3.2/error_prone_annotations-2.3.2.jar
[ERROR] urls[44] = file:/D:/Dev/ApacheMaven/repository/com/google/j2objc/j2objc-annotations/1.3/j2objc-annotations-1.3.jar
[ERROR] urls[45] = file:/D:/Dev/ApacheMaven/repository/org/codehaus/mojo/animal-sniffer-annotations/1.18/animal-sniffer-annotations-1.18.jar
[ERROR] Number of foreign imports: 1
[ERROR] import: Entry[import from realm ClassRealm[maven.api, parent: null]]
[ERROR]
[ERROR] -----------------------------------------------------
[ERROR] : javax.servlet.ServletConfig
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginContainerException
$ mvn -version
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: D:\Dev\ApacheMaven\current-maven
Java version: 1.8.0_252, vendor: Azul Systems, Inc., runtime: D:\Dev\Java\jdk8x64\jre
Default locale: de_DE, platform encoding: Cp1252
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
I can "fix" the problem with this extra plugin dependencies ... but I'm not sure if this is the right way.
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>runtime</scope>
</dependency>
</dependencies>
``´
Thx for reporting. I'll take a look at this - I thought we actually did include the transitive dependencies. It should not harm anything adding the servlet spec classes as you have done.
I had to do the same, using Version 2.1.6.