OpenAPITools / OpenAPITools/openapi-generator

[REQ][Java] Produce sources jar for non-Android projects

Open
#1,817 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Enhancement: Feature
Dominant language
Java
Stars
26.8k
Forks
7.7k
PR merge metrics
PR metrics pending

Description

Is your feature request related to a problem? Please describe.

The generated Java projects can produce a jar, that jar can be used as a dependency in another project. When consuming that jar, productivity suffers a bit because the sources are not available via a standard dependency management tool (gradle/maven/ivy). This means a user has to either look at the class file, or open up the generated project to see the source

Describe the solution you'd like

In addition the the jar containing compiled Java code, produce a source jar that contains the raw source code.

Describe alternatives you've considered

Opening the generated project any time the source needs to be read

Additional context

This is already possible for (some?) Java projects if the target is Android, but is not implemented for non-Android projects. See here for example.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with modules/openapi-generator/src/main/resources/Java/build.gradle.mustache at the linked Android example, then inspect how non-Android Java projects are generated and packaged. Confirm that generated projects produce both compiled and source jars, and verify the source jar contains the generated raw source files.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.