如何从大张旗鼓下载多个文件

时间:2019-08-16 04:51:13

标签: swagger swagger-codegen

尝试从大张旗鼓下载文件时遇到问题。

当我使用下面的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,但是编译失败。您对这种情况有想法吗?

感谢您的帮助

2 个答案:

答案 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>