From: Antoni M. <ant...@gm...> - 2009-04-17 14:49:33
|
Aperturians, Having spent some time on the intricacies of the Maven Assembly plugin, I've added the javadocs, a license and the README file to the assembly. The readme file might be interesting both for developers and users of Aperture. Right now the assembly takes 8 minutes (without tests) on my machine. It can be speeded up: 1. Modify the testcore and testdocs modules in a way described here: http://tinyurl.com/cgf79z 2. Divide all dependencies by SCOPE. Tweak them until all the required-jars are compile-scope, optional-jars are 'provided', which is the case actually. The user is supposed to provide their own logging implementation and rdf store implementation (theoretically). This will drastically reduce the number of inclusion/exclusion patterns in the assembly descriptor, which in turn will drastically speed up the build. All kinds of comments welcome. Antoni Mylka ant...@gm... Antoni Mylka pisze: > Herko ter Horst pisze: >> Aperturians, > > I've managed to migrate the in-container osgi integration test to the > new maven setup. It seems to pass. I've also committed a preliminary > version of the aperture-sdk assembly. To see it > > 1. checkout the trunk > 2. type mvn install > 3. type mvn package assembly:assembly > > PLEASE TEST!!! and send any error messages you see. > > What is/should be in the assembly: > > The assembly contains one folder 'lib' with 4 subfolders > 1. aperture-libs - the Aperture jars. > 2. required-libs - CQ candidates > 3. optional-libs - Sesame, the rdf2go driver, and slf4j-jdk14 > 4. aperture-supportlibs - tests, examples, nrlvalidator, maven plugins > the sum of 1 and 2 and 3 yields a fully functional eclipse target > platform, where all bundles start. > > What is not in the assembly > > 1. sources and javadocs > 2. outlook dll's - OutlookCrawler probably doesn't work > 3. applewrapper - mac-specific stuff probably doesn't work > 4. sesame 2.3.0-SNAPSHOT does NOT have OSGI headers > 5. onejar version of aperture - pretty easy > > Remarks: > > For some reason typing mvn assembly:assembly without 'package' doesn't > work, fails with a cryptic error halfway down the road, any ideas? > > The current integration test is very brittle, it contains a hard-coded > list of all bundles in the transitive dependency closure. We must make > this list dynamic. Idea: make a separate integration-test module, let > the dependency plugin dump the dependency closure to a file and let the > unit test read it from that file > > I'd rather go the onejar way, prepare a single jar that would work in > osgi and in plain jvms, CQ it. Make it fail gracefully when some > dependency is missing (which will be the case in SMILA). The onejar > would contain everything that's currently placed in the aperture-libs > folder (that's why aperture-libs is a separate folder). > > Herko planned to make the 2.3.0 version of sesame osgi-aware, it seems > that it's not. What's the plan for this? > > I haven't managed to get the javadoc plugin to produce an aggregated > javadoc. Googled, copied the tutorial, typed 'mvn site' but maven halted > halfway down the road, without any error message, just stopped > responding. Ideas? > > All kinds of comments welcome. > > Antoni Mylka > ant...@gm... > |