I am building an Eclipse RCP application with the command-line version of PDE build in Eclipse 3.5.1. Then I use AdvancedInstaller to create the installer for the RCP product. I think the context would be similar with InstallShield and similar packagers instead of AdvancedInstaller.
If I incorporate p2 provisioning into my build, would I be able to continue distributing the product as a stand-alone installer (still produced by Advanced Instal开发者_C百科ler) and do the updates through a p2 generated update repository?
I don't know anything about AdvancedInstaller, but I'm guessing it is essentially packaging up the RCP product that results from your build.
Yes, you should be able to do as you describe. Turning on p2 in the build shouldn't change anything with respect to that installer, the build results will still be the runnable RCP product that you can package up.
The difference will just be that the product that you are packaging up will be properly configured for p2. (It will actually be the result of a p2 install operation). The build will also be able to optionally produce a p2 repository for the product which you can put up on the web to allow updating from version to version.
Something else to consider is that you could let P2 handle part of the install itself, rather than writing it in installer-speak. E.g. if you need to install different options of the product (different sets of plugins), you can use the P2 Director to provision the product as part of the install.
P2 is a pretty cool piece of software, worth spending time with.
精彩评论