Я генерирую код Java 8 из файла yaml, в котором указан мой REST API.Модели, созданные с некоторыми аннотациями чванства, от которых я хочу избавиться.Возможно ли это как-то?И, возможно, это будет возможно в ближайшем будущем?
Остальные модели будут путешествовать по маршрутам Camle, поэтому я хотел бы использовать аннотации jaxrs, если таковые имеются.
Я использую openapi 3.0.0 версии, поэтому я должен использовать новейший плагин Swagger Maven Codegen (который я нахожу 3.0,0-rc1 в репозитории Maven)
Я просто не хочу, чтобы в классах были аннотации, специфичные для Swagger.Я использовал:
<generateModelDocumentation>false</generateModelDocumentation>
Сгенерированная модель:
import io.swagger.annotations.ApiModel; //THIS IS NOT COMPILING and i dont need annotated models, just simple pojo classes or maybe some jaxb annotations instead swagger specific..
import io.swagger.annotations.ApiModelProperty;
/**
* The requested data to the service.
*/@ApiModel(description = "The requested data to the service.")
@javax.annotation.Generated(value = "io.swagger.codegen.languages.java.JavaClientCodegen", date = "*****")
public class MyCustomRequest {
........
}
Плагин pom.xml:
<plugin>
<groupId>io.swagger</groupId>
<artifactId>swagger-codegen-maven-plugin</artifactId>
<version>3.0.0-rc1</version>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<inputSpec>${project.basedir}/swagger/MyCustomSpecification.yaml</inputSpec>
<language>java</language>
<configOptions>
<dateLibrary>java8</dateLibrary>
<java8>true</java8>
<interfaceOnly>true</interfaceOnly>
<useJaxbAnnotations>false</useJaxbAnnotations>
</configOptions>
<generateApis>false</generateApis>
<generateApiTests>false</generateApiTests>
<generateModelTests>false</generateModelTests>
<generateModelDocumentation>false</generateModelDocumentation>
<generateSupportingFiles>false</generateSupportingFiles>
<generateApiDocumentation>false</generateApiDocumentation>
<modelPackage>${project.groupId}.swagger.model</modelPackage>
<apiPackage>${project.groupId}.swagger.api</apiPackage>
<invokerPackage>${project.groupId}.swagger.invoker</invokerPackage>
<library>resttemplate</library>
</configuration>
</execution>
</executions>
</plugin>