Another interesting use case would look like using some kind of
pre-generated scanning information created during build-time.

Artifacts are in general considered final after creation, so scans done at
runtime will return the same result. This result could be generated during
build-time and inlined into the artifact in a serialized form, which in turn
in used during runtime to further speed up scan jobs. [1] is doing something
similar by providing a maven plugin.

br, Sven


[1] http://code.google.com/p/reflections/


2011/2/27 Mark Struberg <[email protected]>

> I think it should be enough if the classscanner implementation itself
> shades any such 3rd party jar into a inner dependency.
> My main focus currently is to design the API flexible enough to allow all
> necessary use cases to work.
>
> LieGrue,
> strub
>
> --- On Sun, 2/27/11, Jan-Kees van Andel <[email protected]> wrote:
>
> > From: Jan-Kees van Andel <[email protected]>
> > Subject: Re: Classpath Scanner proposal
> > To: [email protected], [email protected]
> > Date: Sunday, February 27, 2011, 1:35 PM
> > +1, although I think Jar hell is a
> > real issue. Think about libraries like
> > cglib, asm or commons-*** and the pain they sometimes
> > cause.
> >
> > But we can easily work around it, for example by packaging
> > all
> > using-frameworks as uber-jars and renaming
> > the "org.apache.commons.classscan" packages to something
> > like "org.apache.myfaces.org.apache.commons.classscan"
> > and "org.apache.webbeans.org.apache.commons.classscan".
> > This way we prevent
> > any future versioning issues that libraries like cglib and
> > asm currently
> > have.
> >
> > Regards,
> > Jan-Kees
> >
> >
> > 2011/2/27 Mark Struberg <[email protected]>
> >
> > > Hi Jan-Kees!
> > >
> > > Txs for this info!
> > >
> > > Of course, I think the downside of getting another
> > dependency to myfaces
> > > would highly be outvalued by the benefit we'd gain
> > from it :)
> > >
> > > LieGrue,
> > > strub
> > >
> > > --- On Sun, 2/27/11, Jan-Kees van Andel <[email protected]>
> > wrote:
> > >
> > > > From: Jan-Kees van Andel <[email protected]>
> > > > Subject: Re: Classpath Scanner proposal
> > > > To: [email protected],
> > [email protected],
> > "Mark
> > > Struberg" <[email protected]>
> > > > Date: Sunday, February 27, 2011, 12:58 PM
> > > > Hey Mark,
> > > >
> > > > About the JSR proposal. I've actually been
> > talking to some
> > > > Oracle folks
> > > > about this idea some (like 3?) years ago. They
> > didn't
> > > > really like it, since
> > > > the classpath is only a VM implementation
> > detail.
> > > > I proposed it, because back then there were
> > already rumours
> > > > about module
> > > > systems and writing a mechanism that relies on
> > the
> > > > classpath seemed like a
> > > > bad idea at that time. A JSR (like 277 back then)
> > could
> > > > keep annotation
> > > > scanning in mind while writing the spec.
> > > > I pinged them again (I think it was last year)
> > and they
> > > > responded that they
> > > > would think about adding an annotation scanner to
> > Jigsaw,
> > > > but a JSR was out
> > > > of the question.
> > > >
> > > > I think mentioning their names here is
> > inappropriate, but
> > > > they're influential people in the Java/JCP
> > world...
> > > >
> > > > This is not a reason to not write a framework or
> > to not
> > > > submit a JSR, but I
> > > > thought I'd mention it...
> > > >
> > > > Ps. Maybe it's a good idea to "promote" XBean
> > Finder and
> > > > use it in
> > > > MyFaces/OWB/etc...?
> > > > Ps2. IIRC, we implemented our own scanner for
> > MyFaces, for
> > > > the simple reason
> > > > that it removes an additional dependency. But,
> > OTOH, using
> > > > XBean Finder with
> > > > the Maven Shade Plugin would also work...
> > > >
> > > > Regards,
> > > > Jan-Kees
> > > >
> > > >
> > > > 2011/2/27 Mark Struberg <[email protected]>
> > > >
> > > > > Hi Ivan!
> > > > >
> > > > > Yes, I already prepared for the addition of
> > a
> > > > xbean-finder based
> > > > > ClassScanner implementation. But since I
> > didn't reach
> > > > David yesterday and I
> > > > > personally don't know xbean-finder well
> > enough, I just
> > > > started hacking on a
> > > > > scannotation based one (similar to the one
> > we use in
> > > > OpenWebBeans).
> > > > >
> > > > >
> > > > > LieGrue,
> > > > > strub
> > > > >
> > > > > --- On Sun, 2/27/11, Ivan <[email protected]>
> > > > wrote:
> > > > >
> > > > > > From: Ivan <[email protected]>
> > > > > > Subject: Re: Classpath Scanner
> > proposal
> > > > > > To: [email protected],
> > > > [email protected]
> > > > > > Date: Sunday, February 27, 2011, 12:01
> > PM
> > > > > > Totally agree the idea, in Geronimo,
> > > > > > it is definitely an issue, as many
> > > > > > components need to scan the target
> > application,
> > > > and we are
> > > > > > trying to improve
> > > > > > this, e,g. In the xbean-finder, we use
> > some
> > > > filter to limit
> > > > > > the scanning
> > > > > > scope. Also, we hope to have a
> > sharable
> > > > annotation scanning
> > > > > > tool, and open a
> > > > > > JIRA to track this.
> > > > > >
> > > > > > [1] https://issues.apache.org/jira/browse/GERONIMO-5644
> > > > > > [2]
> > > > > >
> > > > >
> > >
> https://svn.apache.org/repos/asf/geronimo/xbean/trunk/xbean-bundleutils/src/main/java/org/apache/xbean/osgi/bundle/util/ResourceDiscoveryFilter.java
> > > > > >
> > > > > > 2011/2/27 Mark Struberg <[email protected]>
> > > > > >
> > > > > > > hi folks!
> > > > > > >
> > > > > > > Since I'm tired of waiting for my
> > EE stack
> > > > to startup
> > > > > > because each and
> > > > > > > every library implements it's own
> > classpath
> > > > scanner
> > > > > > over and over again, I
> > > > > > > thought about introducing a
> > proposal for a
> > > > framework
> > > > > > which allows to first
> > > > > > > register 'ScanJobs' and then just
> > does all
> > > > the
> > > > > > necessary classpath scanning
> > > > > > > only once.
> > > > > > >
> > > > > > > If it turns out to work well, then
> > I even
> > > > consider
> > > > > > this to get submitted as
> > > > > > > JSR...
> > > > > > >
> > > > > > > But before this point gets
> > reached, a lot of
> > > > work is
> > > > > > still waiting.
> > > > > > >
> > > > > > > I hope a few people are interested
> > in this
> > > > work and
> > > > > > help me
> > > > > > > specifying/testing the needs!
> > > > > > >
> > > > > > > The api and a bit of docs can be
> > found at my
> > > > github
> > > > > > repo [1][2].
> > > > > > >
> > > > > > > I'm currently working on
> > 'scannizing'
> > > > OpenWebBeans
> > > > > > (and later MyFaces) as a
> > > > > > > real world example.
> > > > > > >
> > > > > > > LieGrue,
> > > > > > > strub
> > > > > > >
> > > > > > > [1] https://github.com/struberg/Apache-commons-classscanner/
> > > > > > > [2]
> > > > > > >
> > > > >
> > >
> https://github.com/struberg/Apache-commons-classscanner/wiki/Apache-Commons-ClassScan-proposal
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > Ivan
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > >
> > >
> > >
> > >
> >
>
>
>
>

Reply via email to