maven-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jason van Zyl <ja...@takari.io>
Subject Re: How alive is Plexus?
Date Sat, 08 Feb 2014 18:04:21 GMT

On Feb 8, 2014, at 12:42 PM, Benson Margulies <bimargulies@gmail.com> wrote:

> On Sat, Feb 8, 2014 at 12:32 PM, Benson Margulies <bimargulies@gmail.com> wrote:
>> On Sat, Feb 8, 2014 at 12:22 PM, Jason van Zyl <jason@takari.io> wrote:
>>> The original Plexus implementation is dead and has been for quite a while, even
for us. We don't actually use Plexus the container anymore. The extensions that were written
for Plexus that sit atop Sisu is the effective Plexus implementation we are using today. What
this is in practice, for us, is supporting the Plexus way of finding component metadata and
automatically creating the bindings we need so that those Plexus components run in Guice.
But Maven runs on top of Guice via Sisu, not Plexus. Maven's core doesn't use any of the plexus
lifecycle support either. That said we have tons of components and plugins out in the wild
that use the Plexus idioms and we'll have to support that for many years even if there is
no trace of Plexus in Maven's core. Which is why we have the Sisu plexus shim.
>>> 
>>> I am pretty close to removing all Plexus annotations from Maven's core and with
a bit of work in the CLI the core will be almost entirely JSR330 running on Guice, but Guice
itself is visible in a few places where we have some custom scopes and where the Injector
is brought to life.
>>> 
>>> If you don't need any dynamic creation of bindings like we do (our plugin and
extension mechanism) then I highly recommend you take a look at Dagger. This is the DI container
that Square created and looks like more Google people are working on it now than Square employees.
This looks like the successor to Guice and is 24 classes currently, easy to read and works
super well in constrained environments like Android and therefore is super fast for normal
applications.
>>> 
>>> https://github.com/square/dagger
> 
> I don't see any classpath management in here. So what's your view about that?

You can use something like ClassWorlds or JBoss Modules or roll your own.  Dagger is only
about DI which is a good thing.

> 
>> 
>> I'll go read. Thanks.
>> 
>>> 
>>> On Feb 8, 2014, at 11:43 AM, Benson Margulies <bimargulies@gmail.com> wrote:
>>> 
>>>> Since the mailing list archive links on
>>>> http://plexus.codehaus.org/mail-lists.html are dead, I thought that
>>>> I'd probably reach relevant people here.
>>>> 
>>>> I'm using Sisu/Guice in a project, and I'm looking for a _lightweight_
>>>> way to add classpath isolation. OSGi goes not qualify. Does anyone
>>>> still care for plexus?
>>>> 
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>>>> For additional commands, e-mail: dev-help@maven.apache.org
>>>> 
>>> 
>>> Thanks,
>>> 
>>> Jason
>>> 
>>> ----------------------------------------------------------
>>> Jason van Zyl
>>> Founder,  Apache Maven
>>> http://twitter.com/jvanzyl
>>> http://twitter.com/takari_io
>>> ---------------------------------------------------------
>>> 
>>> We all have problems. How we deal with them is a measure of our worth.
>>> 
>>> -- Unknown
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
> 

Thanks,

Jason

----------------------------------------------------------
Jason van Zyl
Founder,  Apache Maven
http://twitter.com/jvanzyl
http://twitter.com/takari_io
---------------------------------------------------------

We know what we are, but know not what we may be.

  -- Shakespeare










Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message