尝试从大张旗鼓下载文件时遇到问题。
当我使用下面的config编译代码时,出现错误:
在可用目标生成中的插件io.swagger:swagger-codegen-maven-plugin:2.3.1中找不到目标“下载”
我尝试破解2个插件,并成功编译,但是仅下载了一个文件。
<plugin>
<groupId>io.swagger</groupId>
<artifactId>swagger-codegen-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>download</goal>
</goals>
<configuration>
<api>Addresses</api>
<owner>test</owner>
<version>2.13.0</version>
<format>yaml</format>
<token>test</token>
<outputFile>${address-service-swagger.file}</outputFile>
</configuration>
</execution>
<execution>
<id>aec</id>
<phase>generate-sources</phase>
<goals>
<goal>download</goal>
</goals>
<configuration>
<api>Shipper</api>
<owner>test</owner>
<version>2.13.0</version>
<format>yaml</format>
<token>test</token>
<outputFile>${shipper-service-swagger.file}</outputFile>
</configuration>
</execution>
</executions>
</plugin>
顺便说一句,我想将outputFile
定义为文件夹目标中的文件,并且我尝试通过目标路径更改outputFile
,但是编译失败。您对这种情况有想法吗?
感谢您的帮助
答案 0 :(得分:0)
如评论中所述,要从SwaggerHub下载API定义,您需要使用swaggerhub-maven-plugin
,而不是swagger-codegen-maven-plugin
。
<plugin>
<groupId>io.swagger</groupId>
<artifactId>swaggerhub-maven-plugin</artifactId>
...
</plugin>
答案 1 :(得分:0)
您使用了错误的插件,您可以这样做
如果你的 swaggerhub api 链接是这样的 https://app.swaggerhub.com/apis/massivebet/betting/0.9.0
那么你配置它并运行
mvn clean generate-resources
下载为 yaml 文件
<plugin>
<groupId>io.swagger</groupId>
<artifactId>swaggerhub-maven-plugin</artifactId>
<version>1.0.8</version>
<executions>
<execution>
<phase>generate-resources</phase>
<goals>
<goal>download</goal>
</goals>
<configuration>
<api>betting</api>
<owner>massivebet</owner>
<version>0.9.0</version>
<host>api.swaggerhub.com</host>
<format>yaml</format>
<token>your token if private apis</token>-->
<outputFile>target/test.yaml</outputFile>
</configuration>
</execution>
</executions>
</plugin>