Using the version 3.x, we could require jakarta.el in the module-info and it worked because it was both the implementation and the API.
Now in version 4.0.0, the automatic module name of the API in the manifest is jakarta.el. However, the implementation jar is the same name and doesn't contain the automatic module name in the manifest, so both end up having the same automatic module name and thus not being able to require the API and the implementation.
Trying to run both jars in module-path gives use the following error:
java.lang.module.FindException: Two versions of module jakarta.el found in lib (jakarta.el-api-4.0.0.jar and jakarta.el-4.0.0.jar)
Probably adding an automatic module name for the implementation should be enough.
Using the version 3.x, we could require
jakarta.el
in the module-info and it worked because it was both the implementation and the API.Now in version 4.0.0, the automatic module name of the API in the manifest is
jakarta.el
. However, the implementation jar is the same name and doesn't contain the automatic module name in the manifest, so both end up having the same automatic module name and thus not being able to require the API and the implementation.Trying to run both jars in module-path gives use the following error:
Probably adding an automatic module name for the implementation should be enough.
Related: https://github.com/eclipse-ee4j/jsp-api/issues/197