Hi Mark, that sounds absolutely reasonable. I am just interested in the state of progress. Afaik xbean-finder is not a project, but rather a single class of some Apache project, is not it? So there are no plans any more to introduce this kind of service via JSR?
Regards out of the train Sven -- sent by phone Am 21.03.2011 um 18:42 schrieb Mark Struberg <[email protected]>: > Hi Sven! > > Yea, I'm aiming for something like that. The major benefit would be that we > do not trash our ClassLoader with all the reflection stuff only needed for > the initial class scanning. This is currently eating up lots of PermGenSpace. > > Btw, the reflections project is based on the original scannotation code from > Bill Burke, so we aint that far away ;) > We are also looking for probably moving it over to xbean-finder which David > wrote for OpenEJB and is now also being used in geronimo and a few other > apache projects. But we'll do that after 1.1.0 ;) > > txs and LieGrue, > strub > > --- On Mon, 3/21/11, Sven Linstaedt <[email protected]> wrote: > >> From: Sven Linstaedt <[email protected]> >> Subject: Re: Classpath Scanner proposal >> To: [email protected] >> Date: Monday, March 21, 2011, 5:35 PM >> 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 >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>> >>> >>> >>> >> > > >
