OpenAPITools / OpenAPITools/openapi-generator-cli
Is there a way to configure Java heap size for the docker container?
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 2k
- Forks
- 208
- Ø Merge
- 7 Std. 12 Min.
- Gemergte PRs (30 T.)
- 6
Beschreibung
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?
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne bei apps/generator-cli/src/app/services/pass-through.service.ts etwa in den Zeilen 119–124 und verfolge, wie useDocker den Generator startet. Bestätige, ob Java-Optionen durchgereicht werden können; als erledigt gilt die Aufgabe, wenn eine Einstellung für die Heap-Größe dokumentiert oder verfügbar gemacht wurde und die Generierung eines großen Java-Projekts ohne den gemeldeten Fehler überprüft wurde.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- docker, java, typescript
- Bereich
- cli, devops, tooling
- Issue-Typ
- Feature
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100