有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在generatedsources目录中编译生成的java maven项目

我正在用swagger codegen maven插件生成一个完整的maven项目(带有自己的pom.xml)。它将项目输出到生成的sources/swagger/目录。但是,此目录中的java源代码是根据驻留在生成器项目的pom中的依赖项进行编译的。xml,而不是生成的xml

这样的配置可能吗?我已经读过maven antlr4和build helper插件,但它们在这方面似乎并不有用


共 (1) 个答案

  1. # 1 楼答案

    使用openapi生成器maven插件生成源代码。而不是maven invoker插件来构建和测试生成的源代码

     <plugin>
       <groupId>org.openapitools</groupId>
       <artifactId>openapi-generator-maven-plugin</artifactId>
       <version>${openapi-generator-maven-plugin.version}</version>
       <executions>
         <execution>
           <goals>
             <goal>generate</goal>
           </goals>
           <configuration>
             <inputSpec>swagger.yaml</inputSpec>
             <generatorName>java</generatorName>
             <skipValidateSpec>true</skipValidateSpec>
             <output>${project.build.directory}/generated-sources/openapi</output>
           </configuration>
         </execution>
       </executions>
     </plugin>
    
     <plugin>
       <artifactId>maven-invoker-plugin</artifactId>
       <version>${maven-invoker-plugin.version}</version>
       <configuration>
         <pom>${project.build.directory}/generated-sources/openapi/pom.xml</pom>
       </configuration>
       <executions>
         <execution>
           <phase>process-sources</phase>
           <goals>
             <goal>run</goal>
           </goals>
         </execution>
       </executions>
     </plugin>