OpenAPITools / OpenAPITools/openapi-generator-cli
Is there a way to configure Java heap size for the docker container?
まだ誰も着手していません。
- 主要言語
- TypeScript
- スター
- 2k
- フォーク
- 208
- 平均マージ
- 7時間 12分
- マージ済み PR(30日)
- 6
説明
When I run openapi-generator-cli on a large OpenAPI file with useDocker, I get the following error when generating Java code:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at java.base/java.util.Arrays.copyOf(Unknown Source)
at java.base/java.lang.AbstractStringBuilder.ensureCapacityInternal(Unknown Source)
at java.base/java.lang.AbstractStringBuilder.append(Unknown Source)
at java.base/java.lang.StringBuffer.append(Unknown Source)
at java.base/java.io.StringWriter.write(Unknown Source)
at com.samskivert.mustache.Template$Segment.write(Template.java:369)
at com.samskivert.mustache.Mustache$StringSegment.execute(Mustache.java:718)
at com.samskivert.mustache.Template.executeSegs(Template.java:157)
at com.samskivert.mustache.Template.execute(Template.java:134)
at com.samskivert.mustache.Template.execute(Template.java:125)
at org.openapitools.codegen.templating.MustacheEngineAdapter.compileTemplate(MustacheEngineAdapter.java:65)
at org.openapitools.codegen.TemplateManager.write(TemplateManager.java:163)
at org.openapitools.codegen.DefaultGenerator.processTemplateToFile(DefaultGenerator.java:1058)
at org.openapitools.codegen.DefaultGenerator.processTemplateToFile(DefaultGenerator.java:1045)
at org.openapitools.codegen.DefaultGenerator.generateSupportingFiles(DefaultGenerator.java:738)
at org.openapitools.codegen.DefaultGenerator.generate(DefaultGenerator.java:919)
at org.openapitools.codegen.cmd.Generate.execute(Generate.java:465)
at org.openapitools.codegen.cmd.OpenApiGeneratorCommand.run(OpenApiGeneratorCommand.java:32)
at org.openapitools.codegen.OpenAPIGenerator.main(OpenAPIGenerator.java:66)
Other languages work fine, and I suspect I just need to give the Java heap some more memory. However, when I look at https://github.com/OpenAPITools/openapi-generator-cli/blob/f3f431db8080a57f788adedd09e2e1aa52ee07b3/apps/generator-cli/src/app/services/pass-through.service.ts#L119-L124, it doesn't appear there's any way to pass in JAVA_OPTS="-Xmx4g" or similar.
Am I missing something? Is there any way to set the max Java heap size?
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
apps/generator-cli/src/app/services/pass-through.service.ts の119〜124行付近から開始し、useDocker がどのように generator を起動するかを追跡してください。Java オプションを引き渡せるか確認してください。heap-size の設定を文書化または公開し、報告されたエラーなしで大規模な Java プロジェクトを生成できることを検証すれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- docker, java, typescript
- 領域
- cli, devops, tooling
- issue の種類
- 機能追加
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 42/100