我最近升级了我的项目,使其使用springboot 3.0.0。所以我的项目中不再有javax.*
模块了。但是Open API生成器一直试图导入javax
模块。特别是,它将javax.annotation.Generated
用于项目中不再存在的@Generated
注释。有没有办法以某种方式重新配置它?
是的,您可以使用useSpringBoot3:"真";在生成器的配置选项中。渐变示例:
configOptions = [
useSpringBoot3: "true"
]
您应该尽可能遵循文档。
您需要的属性是";使用SpringBoot3";或";useJakartaEe";
-
转到https://github.com/OpenAPITools/openapi-generator/tree/master/modules/openapi-generator-maven-plugin
-
在表格的末尾,您可以看到";configHelp";属性,该属性将为当前生成器提供配置";弹簧";在我的情况下是
-
重新运行";mvn清洁安装"-这将给你一个可用的";configOptions";。
-
阅读列表并找到属性
使用雅加达Ee:是否使用Jakarta EE命名空间而不是javax(默认值:false)
我的最后一个pom:
<plugin>
<groupId>org.openapitools</groupId>
<artifactId>openapi-generator-maven-plugin</artifactId>
<version>6.4.0</version>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<configHelp>false</configHelp>
<configOptions>
<useJakartaEe>true</useJakartaEe>
</configOptions>
<inputSpec>
${project.basedir}/src/main/resources/api.openapi.yaml
</inputSpec>
<generatorName>spring</generatorName>
<apiPackage>some.package</apiPackage>
<modelPackage>some.package.model</modelPackage>
</configuration>
</execution>
</executions>
</plugin>
干杯
我在config.json文件中也使用了以下内容:
configOptions = [
useSpringBoot3: "true"
]
我在其他地方听说,在新版本的openapi生成器上,它应该是默认的,但在我的情况下,它不是,我不得不强制它以这种方式工作。
我使用openapi-generator generate
命令并添加
--additional-properties=useSpringBoot3=true
也起了作用。以下是参考资料:https://openapi-generator.tech/docs/generators/spring/