OpenLiberty / open-liberty

Open Liberty is a highly composable, fast to start, dynamic application server runtime environment
https://openliberty.io
Eclipse Public License 2.0
1.15k stars 589 forks source link

Add Maven coordinates to generated feature docs #14633

Open lauracowen opened 5 years ago

lauracowen commented 5 years ago

When using Maven (the approach we encourage), the developer must add the feature into the server.xml but also as a dependency in the pom.xml. We currently only show the server.xml config in the feature docs; we should also show the maven dependency entries that would also be needed.

eg for JAX-RS (check with Alasdair)

        <dependency>
            <groupId>io.openliberty.features</groupId>
            <artifactId>jaxrs-2.1</artifactId>
            <type>esa</type>
            <scope>provided</scope>
        </dependency>

JSON-B API as a provided maven dependency:

<dependency>
    <groupId>javax.json.bind</groupId>
    <artifactId>javax.json.bind-api</artifactId>
    <version>1.0</version>
    <scope>provided</scope>
</dependency>

(similar to info provided here: https://access.redhat.com/documentation/en-us/red_hat_openshift_application_runtimes/1/html/thorntail_runtime_guide/thorntail_fractions_reference#jax_rs)

NottyCode commented 4 years ago

I'm not sure this is the right approach, we are moving away from this way of specifying feature dependencies. We should queue this up for discussion with the dev experience team.

I think showing the api dependencies would be valuable, and for that we would need to show them for both maven and gradle. We can probably do the shown dependency, but it might be simpler to provide the API ones given provisioning of features into the runtime is driven by the server.xml rather than the dependencies.

NottyCode commented 4 years ago

I've spoken offline with @lauracowen and we are not going to put the feature maven dependencies in the docs at the moment. The maven and gradle tools mean that you don't need to do it, so we should focus on what we think is most important.

From that perspective I'm going to look at putting the maven and gradle coordinates for the various API jars into the documentation. We will also need to get the javadoc hosted, so need to work on. Where we host the Javadoc if we do that on a per-feature basis then we won't need to also list the packages in the feature doc, we can just link to the Javadoc where the list of packages shown.

Charlotte-Holt commented 3 years ago

Need a design for what this will look like on the feature pages.

lauracowen commented 1 year ago

Status: We've been working on this recently (forgot we had this issue for it). Hoping to design something early next year. /cc @hlhoots @NottyCode @dmuelle @cbridgha

If anyone cc'd above wants to rename the issue or close it as a dupe, feel free.