Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jakartaee-spec-project-leads] License files in javadoc and sources artifacts

Yes, Oracle is still a copyright holder for most of this content.  Please never remove Oracle's (or anyone else's) copyright statement.  If others have contributed content they own, they can add their own copyright statement.

Joakim Erdfelt wrote on 7/30/19 1:57 PM:
> Did you try the parameter:
> <docfilessubdirs>true</docfilessubdirs> 

Yes, but I discovered that a existing (and redundant) configuration <javadocDirectory> is actually preventing <docfilessubdirs> from working.

https://github.com/eclipse-ee4j/websocket-api/blob/d60e5cbcbf79ff63ce56909c4cf256a3f8610d32/api/pom.xml#L174

>  EFSL license that's linked to in the footer of the javadoc pages.

Ah, linking the footer is a new requirement not listed in the Guide.

I like it, makes the license available on all presented javadoc pages.
I'll have to do the same on the websocket project.

I've copied the relevant section in the jsonp/api/ project here for others to crib off of.

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <configuration>
                    <groups>
                        <group>
                            <title>JSON Processing API Packages</title>
                            <packages>javax.json*</packages>
                        </group>
                    </groups>
                    <description>JSON Processing API documentation</description>
                    <doctitle>JSON Processing API documentation</doctitle>
                    <windowtitle>JSON Processing API documentation</windowtitle>
                    <header><![CDATA[<br>JSON Processing API v${project.version}]]>
                    </header>
                    <bottom><![CDATA[
Comments to: <a href=""mailto:jsonp-dev@xxxxxxxxxxx" moz-do-not-send="true">jsonp-dev@xxxxxxxxxxx">jsonp-dev@xxxxxxxxxxx</a>.<br>
Copyright &#169; 2012&#x2013;{currentYear} Oracle and/or its affiliates. All rights reserved.<br>
Use is subject to <a href="" class="moz-txt-link-rfc2396E" href="mailto:{@docRoot}/doc-files/speclicense.html">"{@docRoot}/doc-files/speclicense.html" target="_top">license terms</a>.]]>
                    </bottom>
                </configuration>
                <executions>
                    <execution>
                        <id>attach-javadocs</id>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>


Out of curiosity, is that supposed to still say "Oracle" still up there?
I only ask, because if you didn't set the <bottom> then the results would be ...

<p class="legalCopy"><small>Copyright &#169; 2017-2019 <a href="https://www.eclipse.org">Eclipse Foundation</a>. All Rights Reserved.</small></p>

from the project's own root /pom.xml like this ...

<p class="legalCopy"><small>Copyright &#169; ${project.inceptionYear}-${currentYear} - <a href="">${project.organization.name}</a>. All Rights Reserved.</small></p>

Which comes from https://oss.sonatype.org/content/groups/staging/org/eclipse/ee4j/project/1.0.5/project-1.0.5.pom that all jakarta projects have as their parent.

On Tue, Jul 30, 2019 at 3:42 PM Bill Shannon <bill.shannon@xxxxxxxxxx> wrote:
The json-api javadoc jar file is correct.  The doc-files/speclicense.html file is the EFSL license that's linked to in the footer of the javadoc pages.

Joakim Erdfelt wrote on 7/30/19 1:12 PM:
Per the instructions at https://wiki.eclipse.org/How_to_Prepare_API_Projects_for_the_Jakarta_EE_8_Release

All of the jar artifacts produced should have an appropriate license file.

For the spec artiacts and javadoc artiacts it's the EFSL (Eclipse Foundation Specification License) - https://raw.githubusercontent.com/eclipse-ee4j/jakartaee-api/master/licenses/EFSL.html
For the rest of the artifacts (main artifact jar/bundle, and its sources classified jar) it's whatever that project is licensed at.

So for a typical jakarta project (with source) we'll have 3 artifacts for each maven module.

jakarta.<name>-<version>.jar - main artifact
jakarta.<name>-<version>-sources.jar - sources classified artifact
jakarta.<name>-<version>-javadoc.jar - javadoc classified artifact

Getting the license file into /META-INF/ for the main artifact is easy enough.
So is getting the license into the sources classified artifact.

However, getting the license into the javadoc classified artifact is a bit tricky.
I'm sure someone here has figured it out, but I can't find that project.

I sampled a few "done" projects on the "Jakarta EE 8 Release" project at https://github.com/orgs/eclipse-ee4j/projects/15

Here's what I found when searching sources classified artifacts from "Done" list ...

$ jar -tvf jakarta.security.enterprise-api-1.0.2-sources.jar | grep -Ei "(license|eclipse|efsl)"
$ jar -tvf jakarta.servlet-api-4.0.3-sources.jar | grep -Ei "(license|eclipse|efsl)"
$ jar -tvf jakarta.security.enterprise-api-1.0.2-sources.jar | grep -Ei "(license|eclipse|efsl)"
$ jar -tvf jakarta.inject-api-1.0-sources.jar | grep -Ei "(license|eclipse|efsl)"
$ jar -tvf jakarta.jms-api-2.0.3-sources.jar | grep -Ei "(license|eclipse|efsl)"
$ jar -tvf jakarta.json-api-1.1.6-sources.jar | grep -Ei "(license|eclipse|efsl)"
 35084 Fri Jul 19 19:29:04 CDT 2019 META-INF/LICENSE.md

Here's what I found when searching javadoc classified artifacts from "Done" list ...

$ jar -tvf jakarta.servlet-api-4.0.3-javadoc.jar | grep -Ei "(license|eclipse|efsl)"
$ jar -tvf jakarta.security.enterprise-api-1.0.2-javadoc.jar | grep -Ei "(license|eclipse|efsl)"
$ jar -tvf jakarta.inject-api-1.0-javadoc.jar | grep -Ei "(license|eclipse|efsl)"
$ jar -tvf jakarta.jms-api-2.0.3-javadoc.jar | grep -Ei "(license|eclipse|efsl)"
$ jar -tvf jakarta.json-api-1.1.6-javadoc.jar | grep -Ei "(license|eclipse|efsl)"
  3250 Fri Jul 19 19:35:18 CDT 2019 doc-files/speclicense.html

The json-api project has figured out how to get a license file into their javadoc classified jar, but not in the correct place.
But json-api did figure out how to get the /META-INF/LICENSE.md correctly.

I'm reaching out to find out if another project has figured this out yet for javadoc classified artifacts?

Thanks,
- Joakim Erdfelt (Jakarta WebSocket)

_______________________________________________
jakartaee-spec-project-leads mailing list
jakartaee-spec-project-leads@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/jakartaee-spec-project-leads



Back to the top