Some suggested patches and improvements
David M. Lloyd
david.lloyd at redhat.com
Fri May 12 18:37:28 UTC 2017
On 05/12/2017 01:02 PM, David M. Lloyd wrote:
> On 05/12/2017 08:31 AM, David M. Lloyd wrote:
>> On 05/12/2017 03:22 AM, Alan Bateman wrote:
>>> On 12/05/2017 01:43, David M. Lloyd wrote:
>>>
>>>> I've proposed five patches to the jpms-spec-experts list [1..5] for
>>>> discussion. The patches are as follows:
>>>>
> [...]
>>>> 3. Layer primitive: addPackage() - allows ModuleLayer.Controllers to
>>>> add packages to a module after it has been defined
> [...]
>>> However for #3 then you've missed several important error cases, e.g.
>>> illegal package names, or the package is already in another module
>>> defined to the class loader. There is impact in other areas too.
>
> I wasn't worried about validating package names at first, because I
> figured that you could never define a class to the package anyway, but
> nevertheless I see the value in error detection (and avoiding piles of
> cruft inside the JVM regardless of whether it might trip any kind of
> internal assertion, which I acknowledge as a possibility as well), so
> I've pushed up a patch [1] to add package name validation. This also
> detects the empty package name situation.
>
> Detecting package conflict is somewhat more subtle; that's coming up next.
>
> [1]
> https://github.com/dmlloyd/openjdk-modules/commit/a636c8891d6958d7b395a57d17c95699ee549500
Here [2] is my first pass at detecting package conflict. As an
additional precaution, I forbid packages to be added to the bootstrap
class loader in this way.
[2]
https://github.com/dmlloyd/openjdk-modules/commit/f02719801ac41c6fd9b8c216f16c3f86b909e5fe
--
- DML
More information about the jigsaw-dev
mailing list