kin*_*roc 5 java codegen swagger
我正在做一个小项目来学习 swagger-codegen。当我执行“mvn clean install”时,出现以下错误:
Unable to make public boolean java.util.Collections$EmptyMap.isEmpty() accessible: module java.base does not "opens java.util" to unnamed module @1e1b061
进而
Failed to execute goal io.swagger.codegen.v3:swagger-codegen-maven-plugin:3.0.18:generate (default) on project swgtst-api: Code generation failed. See above for the full exception.
当我试图java --add-opens=java.base/java.util=ALL-UNNAMED用这里写的来解决它时https://docs.oracle.com/javase/9/migrate/toc.htm#JSMIG-GUID-2F61F3A9-0979-46A4-8B49-325BA0EE8B66
什么也没发生,只是 java显示帮助。
肯定最后一个命令有语法问题,但我不知道究竟是什么......我做错了什么?
小智 2
该选项本身不会执行任何操作,但它会修改Java调用的运行方式。您仍然需要将该选项添加到java运行时调用的选项中mvn。
一种方法是将选项添加到 Maven 文件中(其他人可以提供帮助,或者您可以搜索如何在 Maven 文件中设置 Java 选项)。
我也遇到过类似的情况,但我却选择_JAVA_OPTIONS了过去。您可以通过在调用前加上mvnwith前缀来执行类似的操作_JAVA_OPTIONS,尽管 Maven 可能会覆盖这些内容,并且您必须按照上述方式修改文件。
作为参考,这是我成功使用的命令:
_JAVA_OPTIONS="--add-opens=java.base/java.util=ALL-UNNAMED" swagger-codegen3 generate --lang python --input-spec spec.yaml
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
501 次 |
| 最近记录: |