#java #maven #swagger #swagger-codegen
Вопрос:
я упаковываю свой файл swagger yaml в свой собственный проект, который упаковывается в виде банки, загруженной в наше хранилище maven. С помощью файла swagger и плагина swagger-maven-codegen клиенты должны иметь возможность создавать свои неданные модели из файла swagger.
Как клиенты могут получить доступ к файлу swagger, расположенному внутри банки в разделе static/swagger.yaml? Конечно, только если они объявят это зависимостью.
Пример для клиентов:
<build>
<plugins>
<plugin>
<groupId>io.swagger.codegen.v3</groupId>
<artifactId>swagger-codegen-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<inputSpec>path/to/yaml/in/jar.yaml</inputSpec> <!-- CORRECT PATH? -->
<language>spring</language>
<modelPackage>com.dos.search.api</modelPackage>
<apiPackage>com.dos.search.api</apiPackage>
<language>spring</language>
<generateSupportingFiles>false</generateSupportingFiles>
<withXml>false</withXml>
<generateApis>true</generateApis>
<generateModelDocumentation>false</generateModelDocumentation>
<generateApiDocumentation>false</generateApiDocumentation>
<generateApiTests>false</generateApiTests>
<generateModelTests>false</generateModelTests>
<generateModels>true</generateModels>
<configOptions>
<library>spring-boot</library>
<java8>true</java8>
<dateLibrary>java8</dateLibrary>
<hideGenerationTimestamp>true</hideGenerationTimestamp>
<useTags>true</useTags>
<useBeanValidation>true</useBeanValidation>
<interfaceOnly>true</interfaceOnly>
<delegatePattern>false</delegatePattern>
<hideGenerationTimestamp>true</hideGenerationTimestamp>
</configOptions>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>