This commit is problematic :( It's broken some projects that depend on Tomcat because now the tomcat-coyote.jar doesn't contain the org.apache.tomcat.util.net.jsse or org.apache.tomcat.util.modeler.modules packages which results in ClassNotFoundExceptions. I haven't seen any issues with other jars yet. The removal of those packages from the jar looks intentional, but we aren't providing the classes anywhere else for users to use which is causing problems. Thoughts?
On Tue, Jun 23, 2020 at 6:43 AM <ma...@apache.org> wrote: > This is an automated email from the ASF dual-hosted git repository. > > markt pushed a commit to branch 9.0.x > in repository https://gitbox.apache.org/repos/asf/tomcat.git > > commit 393c022c87e5cbebf1b96c3e1e7aa3b2ab4d5b74 > Author: Raymond Augé <rotty3...@apache.org> > AuthorDate: Fri Jun 19 09:32:56 2020 -0400 > > Fix BZ 64540 - switch from bndwrap task to bnd task, begin generating > a better manifest and make sure the resulting jar contents are correct. > > Signed-off-by: Raymond Augé <rotty3...@apache.org> > --- > build.xml | 17 ++++++++++++++--- > res/bnd/annotations-api.jar.tmp.bnd | 2 +- > res/bnd/build-defaults.bnd | 15 +++++++++++++++ > res/bnd/catalina-tribes.jar.tmp.bnd | 5 ++++- > res/bnd/catalina.jar.tmp.bnd | 5 ++++- > res/bnd/el-api.jar.tmp.bnd | 2 +- > res/bnd/jasper-el.jar.tmp.bnd | 8 +++++++- > res/bnd/jasper.jar.tmp.bnd | 7 ++++++- > res/bnd/jaspic-api.jar.tmp.bnd | 2 +- > res/bnd/jsp-api.jar.tmp.bnd | 2 +- > res/bnd/servlet-api.jar.tmp.bnd | 2 +- > res/bnd/{el-api.jar.tmp.bnd => spec-defaults.bnd} | 11 ++++++----- > res/bnd/tomcat-coyote.jar.tmp.bnd | 9 ++++++++- > res/bnd/tomcat-embed-core.jar.tmp.bnd | 15 ++++++++++++++- > res/bnd/tomcat-embed-el.jar.tmp.bnd | 8 +++++++- > res/bnd/tomcat-embed-jasper.jar.tmp.bnd | 7 ++++++- > res/bnd/tomcat-embed-websocket.jar.tmp.bnd | 7 ++++++- > res/bnd/tomcat-util.jar.tmp.bnd | 6 +++++- > res/bnd/tomcat-websocket.jar.tmp.bnd | 7 ++++++- > res/bnd/websocket-api.jar.tmp.bnd | 2 +- > webapps/docs/changelog.xml | 5 +++++ > 21 files changed, 119 insertions(+), 25 deletions(-) > > diff --git a/build.xml b/build.xml > index 1900b78..7dba702 100644 > --- a/build.xml > +++ b/build.xml > @@ -3358,9 +3358,20 @@ Read the Building page on the Apache Tomcat > documentation site for details on ho > > <target name="add-osgi" if="${addOSGi}" > > <echo message="add-osgi ${jarfile} ${addOSGi}"></echo> > - <bndwrap output="${jarfile}.tmp" definitions="${tomcat.bnd}" > > - <fileset file="${jarfile}" /> > - </bndwrap> > + <local name="filename"/> > + <basename property="filename" file="${jarfile}"/> > + <bnd > + basedir="${basedir}" > + output="${jarfile}.tmp" > + > > + <classpath> > + <pathelement location="${jarfile}"/> > + <pathelement location="${bnd.jar}"/> > + </classpath> > + <bndfiles> > + <pathelement location="${tomcat.bnd}/${filename}.tmp.bnd"/> > + </bndfiles> > + </bnd> > <delete file="${jarfile}" /> > <move file="${jarfile}.tmp" tofile="${jarfile}" /> > </target> > diff --git a/res/bnd/annotations-api.jar.tmp.bnd > b/res/bnd/annotations-api.jar.tmp.bnd > index 9399b6c..9b2f84e 100644 > --- a/res/bnd/annotations-api.jar.tmp.bnd > +++ b/res/bnd/annotations-api.jar.tmp.bnd > @@ -13,7 +13,7 @@ > # See the License for the specific language governing permissions and > # limitations under the License. > > --include: build-defaults.bnd > +-include: build-defaults.bnd, spec-defaults.bnd > > Bundle-Name: tomcat-annotations-api > Bundle-SymbolicName: org.apache.tomcat-annotations-api > diff --git a/res/bnd/build-defaults.bnd b/res/bnd/build-defaults.bnd > index 06e64c4..cdefb9c 100644 > --- a/res/bnd/build-defaults.bnd > +++ b/res/bnd/build-defaults.bnd > @@ -14,3 +14,18 @@ > # limitations under the License. > > Bundle-Version: ${version_cleanup;${version}} > + > +Specification-Title: Apache Tomcat > +Specification-Version: ${version.major.minor} > +Specification-Vendor: Apache Software Foundation > +Implementation-Title: Apache Tomcat > +Implementation-Version: ${version} > +Implementation-Vendor: Apache Software Foundation > + > +X-Compile-Source-JDK: ${compile.source} > +X-Compile-Target-JDK: ${compile.target} > + > +-includeresource.notice: > META-INF/NOTICE;literal="${replace;${cat;../META-INF/default.notice};@YEAR > @;${year}}\n" > +-includeresource.license: {META-INF/LICENSE=../META-INF/default.license} > + > +-noclassforname: true > \ No newline at end of file > diff --git a/res/bnd/catalina-tribes.jar.tmp.bnd > b/res/bnd/catalina-tribes.jar.tmp.bnd > index 630169d..d6ae14a 100644 > --- a/res/bnd/catalina-tribes.jar.tmp.bnd > +++ b/res/bnd/catalina-tribes.jar.tmp.bnd > @@ -28,4 +28,7 @@ Export-Package: \ > org.apache.catalina.tribes.transport,\ > org.apache.catalina.tribes.transport.bio,\ > org.apache.catalina.tribes.transport.nio,\ > - org.apache.catalina.tribes.util > \ No newline at end of file > + org.apache.catalina.tribes.util > + > +-includepackage: \ > + org.apache.catalina.tribes.membership.cloud > \ No newline at end of file > diff --git a/res/bnd/catalina.jar.tmp.bnd b/res/bnd/catalina.jar.tmp.bnd > index 556169f..dc94c42 100644 > --- a/res/bnd/catalina.jar.tmp.bnd > +++ b/res/bnd/catalina.jar.tmp.bnd > @@ -45,4 +45,7 @@ Export-Package: \ > org.apache.naming.java,\ > org.apache.catalina.webresources.war,\ > org.apache.catalina.manager.util,\ > - org.apache.catalina > \ No newline at end of file > + org.apache.catalina > + > +-includepackage: \ > + org.apache.naming.factory.webservices > \ No newline at end of file > diff --git a/res/bnd/el-api.jar.tmp.bnd b/res/bnd/el-api.jar.tmp.bnd > index 70fdb91..1533ede 100644 > --- a/res/bnd/el-api.jar.tmp.bnd > +++ b/res/bnd/el-api.jar.tmp.bnd > @@ -13,7 +13,7 @@ > # See the License for the specific language governing permissions and > # limitations under the License. > > --include: build-defaults.bnd > +-include: build-defaults.bnd, spec-defaults.bnd > > Bundle-Name: tomcat-el-api > Bundle-SymbolicName: org.apache.tomcat-el-api > diff --git a/res/bnd/jasper-el.jar.tmp.bnd b/res/bnd/jasper-el.jar.tmp.bnd > index 1550548..45b2744 100644 > --- a/res/bnd/jasper-el.jar.tmp.bnd > +++ b/res/bnd/jasper-el.jar.tmp.bnd > @@ -20,4 +20,10 @@ Bundle-SymbolicName: org.apache.tomcat-jasper-el > Export-Package: \ > org.apache.el,\ > org.apache.el.lang,\ > - org.apache.el.parser > \ No newline at end of file > + org.apache.el.parser > + > +-includepackage: \ > + org.apache.el.stream,\ > + org.apache.el.util > + > +-includeresource.meta-inf: /META-INF/=../META-INF/jasper-el.jar/ > \ No newline at end of file > diff --git a/res/bnd/jasper.jar.tmp.bnd b/res/bnd/jasper.jar.tmp.bnd > index 4cd16d2..fbcafcb 100644 > --- a/res/bnd/jasper.jar.tmp.bnd > +++ b/res/bnd/jasper.jar.tmp.bnd > @@ -27,4 +27,9 @@ Export-Package: \ > org.apache.jasper.servlet,\ > org.apache.jasper.tagplugins.jstl,\ > org.apache.jasper.tagplugins.jstl.core,\ > - org.apache.jasper.util > \ No newline at end of file > + org.apache.jasper.util > + > +-includepackage: \ > + org.apache.jasper.resources > + > +-includeresource.meta-inf: /META-INF/=../META-INF/jasper.jar/ > \ No newline at end of file > diff --git a/res/bnd/jaspic-api.jar.tmp.bnd > b/res/bnd/jaspic-api.jar.tmp.bnd > index 7ac9368..d911c38 100644 > --- a/res/bnd/jaspic-api.jar.tmp.bnd > +++ b/res/bnd/jaspic-api.jar.tmp.bnd > @@ -13,7 +13,7 @@ > # See the License for the specific language governing permissions and > # limitations under the License. > > --include: build-defaults.bnd > +-include: build-defaults.bnd, spec-defaults.bnd > > Bundle-Name: tomcat-jaspic-api > Bundle-SymbolicName: org.apache.tomcat-jaspic-api > diff --git a/res/bnd/jsp-api.jar.tmp.bnd b/res/bnd/jsp-api.jar.tmp.bnd > index ca2b47d..0746375 100644 > --- a/res/bnd/jsp-api.jar.tmp.bnd > +++ b/res/bnd/jsp-api.jar.tmp.bnd > @@ -13,7 +13,7 @@ > # See the License for the specific language governing permissions and > # limitations under the License. > > --include: build-defaults.bnd > +-include: build-defaults.bnd, spec-defaults.bnd > > Bundle-Name: tomcat-jsp-api > Bundle-SymbolicName: org.apache.tomcat-jsp-api > diff --git a/res/bnd/servlet-api.jar.tmp.bnd > b/res/bnd/servlet-api.jar.tmp.bnd > index 307d1bd..4c9b25d 100644 > --- a/res/bnd/servlet-api.jar.tmp.bnd > +++ b/res/bnd/servlet-api.jar.tmp.bnd > @@ -13,7 +13,7 @@ > # See the License for the specific language governing permissions and > # limitations under the License. > > --include: build-defaults.bnd > +-include: build-defaults.bnd, spec-defaults.bnd > > Bundle-Name: tomcat-servlet-api > Bundle-SymbolicName: org.apache.tomcat-servlet-api > diff --git a/res/bnd/el-api.jar.tmp.bnd b/res/bnd/spec-defaults.bnd > similarity index 85% > copy from res/bnd/el-api.jar.tmp.bnd > copy to res/bnd/spec-defaults.bnd > index 70fdb91..65c2c3a 100644 > --- a/res/bnd/el-api.jar.tmp.bnd > +++ b/res/bnd/spec-defaults.bnd > @@ -13,8 +13,9 @@ > # See the License for the specific language governing permissions and > # limitations under the License. > > --include: build-defaults.bnd > - > -Bundle-Name: tomcat-el-api > -Bundle-SymbolicName: org.apache.tomcat-el-api > -Export-Package: javax.el > +Specification-Title: > +Specification-Version: > +Specification-Vendor: > +Implementation-Title: > +Implementation-Version: > +Implementation-Vendor: > \ No newline at end of file > diff --git a/res/bnd/tomcat-coyote.jar.tmp.bnd > b/res/bnd/tomcat-coyote.jar.tmp.bnd > index 0c21cb4..f0557b8 100644 > --- a/res/bnd/tomcat-coyote.jar.tmp.bnd > +++ b/res/bnd/tomcat-coyote.jar.tmp.bnd > @@ -35,4 +35,11 @@ Export-Package: \ > org.apache.tomcat.util.modeler,\ > org.apache.tomcat.util.net,\ > org.apache.tomcat.util.net.openssl,\ > - org.apache.tomcat.util.net.openssl.ciphers > \ No newline at end of file > + org.apache.tomcat.util.net.openssl.ciphers > + > +-includepackage: \ > + org.apache.tomcat.util.bcel,\ > + org.apache.tomcat.util.http.fileupload.impl,\ > + org.apache.tomcat.util.http.fileupload.util.mime,\ > + org.apache.tomcat.util.modeler.modules,\ > + org.apache.tomcat.util.net.jsse > \ No newline at end of file > diff --git a/res/bnd/tomcat-embed-core.jar.tmp.bnd > b/res/bnd/tomcat-embed-core.jar.tmp.bnd > index 553de57..07f84fe 100644 > --- a/res/bnd/tomcat-embed-core.jar.tmp.bnd > +++ b/res/bnd/tomcat-embed-core.jar.tmp.bnd > @@ -92,4 +92,17 @@ Export-Package: \ > org.apache.tomcat.util.res,\ > org.apache.tomcat.util.scan,\ > org.apache.tomcat.util.security,\ > - org.apache.tomcat.util.threads > \ No newline at end of file > + org.apache.tomcat.util.threads > + > +-includepackage: \ > + org.apache.naming.factory.webservices,\ > + org.apache.tomcat.util.bcel,\ > + org.apache.tomcat.util.http.fileupload.impl,\ > + org.apache.tomcat.util.http.fileupload.util.mime,\ > + org.apache.tomcat.util.json,\ > + org.apache.tomcat.util.modeler.modules,\ > + org.apache.tomcat.util.net.jsse,\ > + org.apache.tomcat.util.threads.res > + > +-includeresource.notice2: > META-INF/NOTICE;literal="${replace;${cat;../META-INF/servlet-api.jar.notice};@YEAR > @;${year}}\n" > +-includeresource.license2: > {META-INF/LICENSE=../META-INF/servlet-api.jar.license} > diff --git a/res/bnd/tomcat-embed-el.jar.tmp.bnd > b/res/bnd/tomcat-embed-el.jar.tmp.bnd > index 19589ea..5ed8792 100644 > --- a/res/bnd/tomcat-embed-el.jar.tmp.bnd > +++ b/res/bnd/tomcat-embed-el.jar.tmp.bnd > @@ -22,4 +22,10 @@ Export-Package: \ > javax.el,\ > org.apache.el,\ > org.apache.el.lang,\ > - org.apache.el.parser > \ No newline at end of file > + org.apache.el.parser > + > +-includepackage: \ > + org.apache.el.stream,\ > + org.apache.el.util > + > +-includeresource.meta-inf: /META-INF/=../META-INF/jasper-el.jar/ > diff --git a/res/bnd/tomcat-embed-jasper.jar.tmp.bnd > b/res/bnd/tomcat-embed-jasper.jar.tmp.bnd > index e7eafe8..070e273 100644 > --- a/res/bnd/tomcat-embed-jasper.jar.tmp.bnd > +++ b/res/bnd/tomcat-embed-jasper.jar.tmp.bnd > @@ -32,4 +32,9 @@ Export-Package: \ > org.apache.jasper.servlet,\ > org.apache.jasper.tagplugins.jstl,\ > org.apache.jasper.tagplugins.jstl.core,\ > - org.apache.jasper.util > \ No newline at end of file > + org.apache.jasper.util > + > +-includepackage: \ > + org.apache.jasper.resources > + > +-includeresource.meta-inf: /META-INF/=../META-INF/jasper.jar/ > diff --git a/res/bnd/tomcat-embed-websocket.jar.tmp.bnd > b/res/bnd/tomcat-embed-websocket.jar.tmp.bnd > index 1a8f762..f6470f0 100644 > --- a/res/bnd/tomcat-embed-websocket.jar.tmp.bnd > +++ b/res/bnd/tomcat-embed-websocket.jar.tmp.bnd > @@ -22,4 +22,9 @@ Export-Package: \ > javax.websocket,\ > javax.websocket.server,\ > org.apache.tomcat.websocket,\ > - org.apache.tomcat.websocket.server > \ No newline at end of file > + org.apache.tomcat.websocket.server > + > +-includepackage: \ > + org.apache.tomcat.websocket.pojo > + > +-includeresource.meta-inf: /META-INF/=../META-INF/tomcat-websocket.jar/ > diff --git a/res/bnd/tomcat-util.jar.tmp.bnd > b/res/bnd/tomcat-util.jar.tmp.bnd > index 3c456d8..d1011d9 100644 > --- a/res/bnd/tomcat-util.jar.tmp.bnd > +++ b/res/bnd/tomcat-util.jar.tmp.bnd > @@ -26,4 +26,8 @@ Export-Package: \ > org.apache.tomcat.util.file,\ > org.apache.tomcat.util.res,\ > org.apache.tomcat.util.security,\ > - org.apache.tomcat.util.threads > \ No newline at end of file > + org.apache.tomcat.util.threads > + > +-includepackage: \ > + org.apache.tomcat.util.json,\ > + org.apache.tomcat.util.threads.res > \ No newline at end of file > diff --git a/res/bnd/tomcat-websocket.jar.tmp.bnd > b/res/bnd/tomcat-websocket.jar.tmp.bnd > index 623c32c..13f1423 100644 > --- a/res/bnd/tomcat-websocket.jar.tmp.bnd > +++ b/res/bnd/tomcat-websocket.jar.tmp.bnd > @@ -19,4 +19,9 @@ Bundle-Name: tomcat-websocket > Bundle-SymbolicName: org.apache.tomcat-websocket > Export-Package: \ > org.apache.tomcat.websocket,\ > - org.apache.tomcat.websocket.server > \ No newline at end of file > + org.apache.tomcat.websocket.server > + > +-includepackage: \ > + org.apache.tomcat.websocket.pojo > + > +-includeresource.meta-inf: /META-INF/=../META-INF/tomcat-websocket.jar/ > \ No newline at end of file > diff --git a/res/bnd/websocket-api.jar.tmp.bnd > b/res/bnd/websocket-api.jar.tmp.bnd > index cad59c2..0596155 100644 > --- a/res/bnd/websocket-api.jar.tmp.bnd > +++ b/res/bnd/websocket-api.jar.tmp.bnd > @@ -13,7 +13,7 @@ > # See the License for the specific language governing permissions and > # limitations under the License. > > --include: build-defaults.bnd > +-include: build-defaults.bnd, spec-defaults.bnd > > Bundle-Name: tomcat-websocket-api > Bundle-SymbolicName: org.apache.tomcat-websocket-api > diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml > index e23e4a1..6ec6c69 100644 > --- a/webapps/docs/changelog.xml > +++ b/webapps/docs/changelog.xml > @@ -142,6 +142,11 @@ > <bug>64532</bug>: Update to bnd 5.1.1. Pull request provided by > Raymond > Augé. (markt) > </fix> > + <fix> > + <bug>64540</bug>: Switch from bndwrap task to bnd task, begin > generating > + a better manifest and make sure the resulting jar contents are > correct. > + Pull request provided by Raymond Augé. (markt) > + </fix> > </changelog> > </subsection> > </section> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > >