OpenAPITools / OpenAPITools/openapi-generator-cli
Is there a way to configure Java heap size for the docker container?
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- TypeScript
- Star
- 2k
- Fork
- 208
- Merge trung bình
- 7 giờ 12 phút
- Pull request đã merge (30 ngày)
- 6
Mô tả
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?
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu tại apps/generator-cli/src/app/services/pass-through.service.ts, khoảng các dòng 119-124, và theo dõi cách useDocker khởi chạy generator. Xác nhận liệu các tùy chọn Java có thể được truyền qua hay không; công việc được xem là hoàn tất khi đã ghi lại tài liệu hoặc cung cấp một thiết lập kích thước heap và xác minh việc tạo một dự án Java lớn mà không gặp lỗi đã được báo cáo.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- docker, java, typescript
- Lĩnh vực
- cli, devops, tooling
- Loại issue
- Tính năng
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 42/100