Notes on building, running and releasing PG Eclipse
These notes assume you have checked out the project source from CVS
according to
PGEclipseSources. You should have
=ed.inf.proofgeneral- as a package inside your Eclipse development
environment. To avoid
confusion, make sure that the PG plugin is
not already enabled in this
Eclipse. You can check and disable or uninstall it via
Help -> Manage Configuration.
See also the README.txt in the distribution.
Building and running it
Here is the easiest way to run in the runtime workbench (i.e. a second copy of Eclipse
with the PG plugin installed):
- open
plugin.xml
by double clicking it
- click on Launch application or Launch Debug.
Debug mode connects back to the main Eclipse instance and allows
crafty dynamic updates of installed classes in the runtime instance
as you develop.
Run configurations
The button above uses a default
run configuration. You can define others by:
- Choose Run/Debug from Run menu
- Select application:
org.eclipse.ui.ide.workbench
- Make sure that
ed.inf.proofgeneral
plugin is included
You can also run the product which is defined in
pgeclipse.product
.
But at the moment, this is not the same as the released product
(it is based on the plugin, rather than a "feature").
Releasing: the Proof General features and update site
These are managed with two packages kept in a different place in the CVS repository, at:
eclipse/ed.inf.proofgeneral.feature
eclipse/ed.inf.proofgeneral.update-site
Instructions are included in the README of the update site project.
These packages are only likely to be of interest
for local developers with DICE accounts who can update the web pages. Other developers
or users should drop a note when they'd like to see an update.
Notes on packaging products
The most basic mechanism is to release a
deployable plugin which
can be installed into an Eclipse based product (e.g. the Eclipse
platform itself).
An Eclipse
product is a standalone application which launching
infrastructure and all required plugins. This is the main way we distribute
Eclipse Proof General, in the
PGEclipse product.
It's the simplest for users because they only need
to download one thing. At the start, we suppose that most users are
not already using Eclipse.
Eclipse now allows a product to be based on a collection of "features",
and includes an update manager for adding and updating features.
This is a better packaging mechanism than just using plugins+dependencies.
It means that users can extend their products with add-ons, as
well as update the plugins from an
update site.
See Eclipse help for more guidance.
RCP
The Rich Client Platform is the Eclipse architecture for building cross-platform
products. Here are some pointers which were useful to understand it:
Now that the products are set up, you don't really need to know much about
this unless something goes wrong. The main challenge is installing the right
combination of things for the "shadow" Eclipse installation which is used
for multiple platform builds of products. There are some notes about this
in the CVS file
devel-docs/howto/make-release.txt
in the main
plugin project.