[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [p2-dev] Equinox P2 executable updates

Hi John,

Concerning updating the eclipse.exe. I was facing the same problem within our proprietary software update solution and I found out that it is possible to:
- first move/rename the *.exe to something like *.exe.backup with File.renameTo(). It is possible to do that while the *.exe is running and the move/renameTo is in the same folder.
- store the new *.exe in its location
- since it is not possible to delete the *.exe.backup since it is still running it has to be "garbage collected" the next time the application is running or at least the next time before an update for the *.exe is requested.

This works well in WinXP/Vista. For Linux/Mac OS X I haver tested it.


John Arthorne wrote:

Hi Prodan, yes that is possible. The "unzip" touchpoint instruction can lay down files anywhere on your disk. Relative paths are treated as relative to the current working directory, which is the directory containing eclipse.exe. So you would have a target path like "../folder1".

Currently p2 doesn't support updating an eclipse.exe that is currently running. We refactored most of the launcher code into a separate DLL so that upgrading the launcher itself should be quite rare. You can currently only do this by running p2 from a separate install folder (run the p2 director application and point it at the installation to upgrade).

Prodan Daniela <daniela.prodan@xxxxxxxxx>
Sent by: p2-dev-bounces@xxxxxxxxxxx

02/18/2009 07:42 AM

Please respond to
P2 developer discussions <p2-dev@xxxxxxxxxxx>


[p2-dev] Equinox P2 executable updates


For an Eclipse based product that has the following content:


is it possible to install updates that will be installed in folder1/ or folder2/ ?
Equinox P2 can run updates that are actually .exe files and not only eclipse folder will be updated, but also files from folder1/ or folder2/ ?

And how the Equinox P2 manages updates that are executables? Runs the .exe file in background, in the command line? Or it can run the .exe file and start the graphic interface for that update and the user can go on with the installation?

Thank you,
Daniela Prodan
p2-dev mailing list