You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a piece from jakarta.servlet.jsp.jstl-api-2.0.0.jar manifest:
Manifest-Version: 1.0
Bundle-Description: Jakarta Standard Tag Library 2.0 Specification
Automatic-Module-Name: jakarta.servlet.jsp.jstl <<< Note this line
Bundle-License: http://www.eclipse.org/legal/epl-2.0, https://www.gnu.
org/software/classpath/license.html
Bundle-SymbolicName: jakarta.servlet.jsp.jstl-api
Implementation-Version: 2.0.0
Bundle-Name: Jakarta Standard Tag Library API
Now, lets consider implementation org.glassfish.web/jakarta.servlet.jsp.jstl/2.0.0 that has the following jar: jakarta.servlet.jsp.jstl-2.0.0.jar. This jar does NOT have Automatic-Module-Name in its manifest. As a result the following thing happens - these two jars modules cat NOT be used together. The reason is that they have similar module name.
The name of the API module comes from manifest (Automatic-Module-Name: jakarta.servlet.jsp.jstl) the name of the IMPL module comes from module name jakarta.servlet.jsp.jstl. So, ModuleFinder in JPMS can NOT work with two such modules and as result one module is always ignored. Besides, it is very difficult to understand why.
Same problem with jakarta.servlet.jsp.jstl-3.0.0
The text was updated successfully, but these errors were encountered:
PavelTurk
changed the title
[SERIOUS] Add Automatic-Module-Name in jakarta.servlet.jsp.jstl-2.0.0 manifest
[SERIOUS] Add Automatic-Module-Name in jakarta.servlet.jsp.jstl-x.x.x.jar manifest
Feb 1, 2023
This is a piece from
jakarta.servlet.jsp.jstl-api-2.0.0.jar
manifest:Now, lets consider implementation org.glassfish.web/jakarta.servlet.jsp.jstl/2.0.0 that has the following jar:
jakarta.servlet.jsp.jstl-2.0.0.jar
. This jar does NOT haveAutomatic-Module-Name
in its manifest. As a result the following thing happens - these two jars modules cat NOT be used together. The reason is that they have similar module name.The name of the API module comes from manifest (
Automatic-Module-Name: jakarta.servlet.jsp.jstl
) the name of the IMPL module comes from module namejakarta.servlet.jsp.jstl
. So, ModuleFinder in JPMS can NOT work with two such modules and as result one module is always ignored. Besides, it is very difficult to understand why.Same problem with jakarta.servlet.jsp.jstl-3.0.0
The text was updated successfully, but these errors were encountered: