public inbox for [email protected]  
help / color / mirror / Atom feed
From: Kartik Ohri <[email protected]>
To: Chapman Flack <[email protected]>
Cc: [email protected]
Subject: Re: PL/Java new build plugin
Date: Sun, 19 Jul 2020 11:58:11 +0530
Message-ID: <CAASLQ4O=tYGASWB6F+PTiB2L3RbmHcVX8XAbKHyhwBDOodH1zg@mail.gmail.com> (raw)
In-Reply-To: <[email protected]>
References: <CAASLQ4Mva7dAXiS_c9OLhV4VzNHF=XNKJosuS5gtZTB6b4TW1Q@mail.gmail.com>
	<[email protected]>
	<CAASLQ4OuFQCiSMeypQtfRaAvj-4H-EAgszLwdAo6Tc1zS9B66g@mail.gmail.com>
	<[email protected]>
	<CAASLQ4PSizkzBKyyfkp9ccJ1qDPLRLu6g2bo9cN-XuTzGQFGfQ@mail.gmail.com>
	<CAASLQ4P9zGxHda=HAGJ2eAa-oMmJtnPm=4a14mj4P-QpfFsYxg@mail.gmail.com>
	<[email protected]>
	<CAASLQ4NmornyOW8n-qyneLpDVPgV0Js=+=Eys6bw3Y-ZiVbVjA@mail.gmail.com>
	<CAASLQ4OYvTQL7ssG4=QyEqhaB71=AM-svBUYj3uRdWXWoQgBPw@mail.gmail.com>
	<[email protected]>
	<[email protected]>
	<CAASLQ4N40xn-0S4Nsy0Ld75=Ny719MPUE7_aRP_5nAcAqkAqoQ@mail.gmail.com>
	<CAASLQ4OiWCQQwYFnxAQBe2dC6Ms803RjCMX-9AC2=1m0ZzeDhA@mail.gmail.com>
	<[email protected]>
	<[email protected]>
	<CAASLQ4MqSVnhK_GMgq03HcmOKk7a-v7b4L0yfPbtRO=mpqoQtA@mail.gmail.com>
	<[email protected]>
	<CAASLQ4OR8ZD4GRNHVGuTzJp_UP-PAcADxcz=uymiSFPpg8EEHQ@mail.gmail.com>
	<[email protected]>

>
> Aha! And it generates that using getPathFromArtifacts(), which just goes
> through its own dependency list and collects the jar names (which are
> maybe the exact same jar names its current ClassRealm loader is using).
>
> I wonder what would happen just making a dead-simple ClassLoader with
> two "parents" and otherwise no functionality of its own. Of course it
> could only have one real parent and an instance field for the 'extra' one.
>
> Create it so one 'parent' is the ClassRealm loader that loaded us, and the
> other is from getSystemClassLoader() (they changed the official name to
> "application class loader" but didn't rename the method). Have its
> findClass
> method just say "either parent A has it or parent B has it or I haven't
> heard of it, sorry."
>
> (In fact, findClass doesn't get called until the 'real' parent has already
> been checked, so it doesn't need to do anything besides check the 'extra'
> parent and return what it finds, if anything.)
>

There is an issue with calling findClass on the instance field because it
has protected visibility. loadClass on the other hand is public.


view thread (132+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected]
  Subject: Re: PL/Java new build plugin
  In-Reply-To: <CAASLQ4O=tYGASWB6F+PTiB2L3RbmHcVX8XAbKHyhwBDOodH1zg@mail.gmail.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox