On 23 March 2010 16:53, zoe slattery <[email protected]> wrote: > >>> >>> 2) Sample 'assemblies'. At the moment most of the samples have a >>> 'platform assembly' project which copies all the jars required to run the >>> sample into a target directory and provides some minimal configuration. I >>> think it might be a good idea to package the platforms as tar and/or zip >>> files and make them available along with the sample jars. I think the right >>> way to do this is probably (I'd like advice on this, I'm definitely not a >>> Maven expert) to change the platform assembly projects to use the maven >>> assembly plugin to create zip/tar files. I'll raise a JIRA as a sub task of >>> 173 if you think this is the right thing to do. >> >> Creating the zip/tar is certainly one possible solution. If we decide to >> go that route then the first mechanism that comes to my mind is the >> maven-assembly-plugin (but I'm no maven expert either). I'm not opposed to >> building the zip/tar of the platform assemblies - but I wonder if it is >> really necessary. >> >> > I am beginning to think it probably isn't possible :-). > > I spent some time trying to work out how to generate a platform zip for the > blog sample. Generating the zip using the assembly plugin is straightforward > enough but I ran into problems when the apache-release process checks the > licenses. I think it's checking for META-INF/LICENCE inside every jar in the > zip. Of course it doesn't find them for equinox platform jars - so it > chokes. > > A better plan would be to make a standalone-assembly project that will > create a zip that just has a pom.xml (the same as the one in the the > blog-assembly project) and the platform configuration files > (configuration/config.ini). The zip could be extracted into say /tmp, then > 'mvn install' should create the whole platform as long as the user have > maven and java installed. I have this working perfectly. To create the zip I > run: > > mvn install -Papache-release > > from within the standalone-assembly project, the zip file is created and > installed in .m2/repository. Great. > > However - this won't work as part of build of the full tree, the problem is: > > [INFO] [assembly:single {execution: source-release-assembly}] > [INFO] Skipping the assembly in this project because it's not the Execution > Root > > so, the zip file will never be built. > > Is there another way to do this?
Assembly plugin would be the ideal way. Does setting runOnlyAtExecutionRoot to false work? It seems the default for this is false anyway, but maybe something in a parent / grandparent pom etc is setting it to true. > Or am I missing something obvious? If not I > think we just have to say that people who want to run the samples have to > check out and build Aries - this seems less than ideal to me. My > standalone-assembly project is not checked in, I can do so if anyone else > wants to look at this. > > Zoe > >> >> >>> >>>> I appreciate this might be disruptive, but IMO it's best to have (what >>>> I think is necessary) disruption done sooner rather than later. >>>> >>>> Please do comment on this proposal - I've tried to mark the changes >>>> with 'TODO' to help. >>>> >>>> Thanks, >>>> Jeremy >>>> >>>> >>> >>> >> >> > >
