Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [tycho-user] How to pack200 ?

On 2012-12-08 11:09 AM, Mickael Istria wrote:
Hi all,

I see Tycho has had supports for pack200 stuff for awhile.
I'd like to use it in order to reduce the time to fetch artifacts from a
p2 repository built with Tycho.

I had a look at integration tests and there are a few things I'd like to
understand before just copy-pasting stuff.
* Is there any documentation already available?

No, there is no documentation beyond the ITs. It's supposed to be
self-evident but feel free to capture this explanation in eclipse wiki
if you find it useful ;-)

If not, (For the following ones, it could be better if you can set up a
documentation on a wiki page -if not already existing- with such answers
and send a link as reply)
* Why are there 2 pack200 plugins? What are their responsibilities?

Pack200 is most commonly used together with jar singing and requires
separate "normalization" phase (see [1] for more details). Because there
are at least two ways to sign jars and because maven does not allow
interleaving mojos from the same plugin with mojos from different
plugins within the same build phase, it was necessary to split pack200
normalize and pack functionality between two separate maven plugins. The
relevant part of build lifecycle looks like this


* Is the process of pack200'ing content of an eclipse-repository always
to use pack200a:normalize and then pack200b:pack?

Normalization is only required when pack200 and jar signing are used
together. For unsigned jars pack200b:pack can be used without normalization.

* Do this plugin apply to an eclipse-repository directly ? If yes, it
the tycho-p2-plugin:p2-metadata necessary ?

No, tycho pack200 support operates on individual bundles, not on repository.

* Can it apply to an old eclipse-update-site ?

Not sure, but most likely eclipse-update-site does not with pack200 bundles.

And in any case
* Are there plans to merge those 2 pack200a and pack200b plugins? IMO it
would be an interesting usability improvement. I can imagine that those
plugins are separated to make it easier to push signing between both
executions. In that case, would it be possible to unify both into a
pack200 plugin, and to create a pack200b that would simply be an "alias"
to pack200 mojos?

It is not possible to merge pack200a and pack200b plugins without
ability to interleave mojos from different plugins within the same build
phase (see above). This will require explicit maven core support and
likely requires changes to pom.xml format, which in practical terms
means this most likely will never happen.



Thanks in advance.
Mickael Istria
Eclipse developer at JBoss, by Red Hat <>
My blog <> - My Tweets

tycho-user mailing list

Back to the top