[forge-dev] Running Furnace (Forge container) in a flat classloader

Lincoln Baxter, III lincolnbaxter at gmail.com
Thu Jul 27 17:08:26 EDT 2017


This is really awesome, George! Definitely another milestone in Forge's
"write once, run everywhere" philosophy! You are amazing :)

Lincoln Baxter, III
http://ocpsoft.org
"Simpler is better."

On Fri, Jul 21, 2017 at 1:08 PM, Ivan St. Ivanov <ivan.st.ivanov at gmail.com>
wrote:

> Hi George,
>
> I already tried the service. And still there I need to run it as a separate
> application (by e.g. launching Wildfly Swarm).
>
> So I think I got it right that furnace embedded does that, but inside your
> own monolith ;)
>
> Awesome! Great work!
>
> Cheers,
> Ivan
>
> On Fri, Jul 21, 2017 at 5:40 PM, George Gastaldi <ggastald at redhat.com>
> wrote:
>
> > Hi Ivan,
> >
> > You can already do that with https://github.com/forge/forge-service.
> Forge
> > doesn't fork into another process (since Forge 2.0.0.Final was released
> :))
> >
> > The only difference is that furnace-embedded will run in a single Weld
> > instance, which may be a good thing when you run Forge inside a WAR or
> when
> > you don't need a modular classpath.
> >
> >
> > Em 21 de jul de 2017 06:07, "Ivan St. Ivanov" <ivan.st.ivanov at gmail.com>
> > escreveu:
> >
> > Hi George,
> >
> > If I got it right, that's really awesome! No, no, let me put it in
> another
> > way: that's amazing!!! :)
> >
> > Let me try and explain what I got.
> >
> > If I add dependency in my project to furnace-embedded and to Forge BOM
> (or
> > whichever project that exports maven addons, i.e. commands), I will be
> able
> > to call those addons/commands programmatically form my project.
> >
> > That is, I can use the simple container to look up e.g. the create
> project
> > command and run it, configuring it with the "input" like the UI does. And
> > this will create a new project for me without running Forge as a separate
> > process. Right?
> >
> > Cheers,
> > Ivan
> >
> > On Fri, Jul 21, 2017 at 8:10 AM, George Gastaldi <ggastald at redhat.com>
> > wrote:
> >
> > > Hey all!
> > >
> > > For those interested in running Forge in a flat classloader, using CDI
> in
> > > its full potential (including Interceptors and Decorators), I created a
> > > project that may help you[1].
> > >
> > > It is basically an implementation of the Furnace API that exposes the
> > > services provided by addons that use the simple-container using a CDI
> > > extension. Addons that depend on the CDI container are already
> > > CDI-friendly, so expect no changes in this project when loading those
> > > addons.
> > >
> > > It may save you some memory by not starting several Weld instances and
> > > it's really fast. Give it a try if you like!
> > >
> > > [1] https://github.com/gastaldi/furnace-embedded
> > >
> > > Best Regards,
> > >
> > >
> > >
> > > George Gastaldi
> > >
> > > Principal Software Engineer
> > >
> > > Red Hat <https://www.redhat.com>
> > >
> > > Remote
> > >
> > > Joinville - Santa Catarina
> > >
> > > ggastald at redhat.com    M: +55-47-99711-1000
> > > <https://red.ht/sig>
> > > TRIED. TESTED. TRUSTED. <https://redhat.com/trusted>
> > > @redhatnews <https://twitter.com/redhatnews>   Red Hat
> > > <https://www.linkedin.com/company/red-hat>   Red Hat
> > > <https://www.facebook.com/RedHatInc>
> > >
> > >
> > _______________________________________________
> > forge-dev mailing list
> > forge-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/forge-dev
> > _______________________________________________
> > forge-dev mailing list
> > forge-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/forge-dev
> >
> _______________________________________________
> forge-dev mailing list
> forge-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/forge-dev
>


More information about the forge-dev mailing list