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 > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >
