Я пытаюсь сгенерировать клиентский Api, используя плагин swagger codegen maven, версия 2.3.1.
Но в моем сгенерированном ApiClient.java некоторые операции импорта, связанные с джерси, не работают.Я думаю, что это связано с версией зависимостей джерси, но я не могу найти рабочее решение моей проблемы, даже после 2 дней поиска и попытки.
Как настроить плагин или какие зависимости я должен добавить, чтобы сгенерированный код работал?
не работает импорт (ApiClient.java):
import org.glassfish.jersey.jackson.JacksonFeature;
import org.glassfish.jersey.media.multipart.FormDataBodyPart;
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
import org.glassfish.jersey.media.multipart.MultiPart;
import org.glassfish.jersey.media.multipart.MultiPartFeature;
Конфигурация подключаемого модуля swagger codegen:
<plugin>
<groupId>io.swagger</groupId>
<artifactId>swagger-codegen-maven-plugin</artifactId>
<version>2.3.1</version>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<inputSpec>${project.basedir}/src/main/resources/swagger.json</inputSpec>
<language>java</language>
<generateApis>true</generateApis>
<generateModels>true</generateModels>
<generateSupportingFiles>true</generateSupportingFiles>
<generateModelDocumentation>false</generateModelDocumentation>
<generateModelTests>false</generateModelTests>
<modelPackage>somePackage.models</modelPackage>
<apiPackage>somePackage.api</apiPackage>
<invokerPackage>somePackage.invoker</invokerPackage>
<configOptions>
<dateLibrary>java8</dateLibrary>
<sourceFolder>swagger</sourceFolder>
<java8>true</java8>
</configOptions>
<library>jersey2</library>
<output>target/generated-sources</output>
<groupId>somePackage</groupId>
<artifactId>generatedapi</artifactId>
<artifactVersion>1.0.0</artifactVersion>
</configuration>
</execution>
</executions>
</plugin>
связанные зависимости:
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<version>2.25.1</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-multipart</artifactId>
<version>2.25.1</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>2.25.1</version>
</dependency>
Когда я изменяю версию на 2.27, тогда дополнительный импорт не работает:
import org.glassfish.jersey.client.ClientConfig;
import org.glassfish.jersey.client.ClientProperties;
import org.glassfish.jersey.filter.LoggingFilter;
Когда я изменяю версию на 2.26, такой же дополнительный импорт завершается неудачно, но
import org.glassfish.jersey.jackson.JacksonFeature;
работает.