User-agent: Mozilla Thunderbird 1.0 - [MOOX M3] (Windows/20041208)
Hi,
currently we are developing an RCP application containing a plugin that
needs bytecode-enhancement. This is normal with the use of JDO and
possibly EJB 3.0 variants (?) and whatever the two will be merged into.
There are probably more technologies that apply bytecode-enhancement in
the build process, maybe e.g. AspectJ, if I understood it correctly from
a quick glance.
While building the project in the workspace everything works fine, as
there exists an Eclipse builder plugin.
However, exporting the set of plugins as a product is causing problems.
PDE automatically generates individual build.xml files for compiling and
packaging the plugins which are normally regenerated with every build.
An individual plugin's Build Configuration can be marked as being a
"Custom Build", causing PDE to keep the plugin's build.xml file instead
of overwriting it with every build. This enables us to place our
invocation of the JDO bytecode-enhancer between compiling and packaging
the jar of this plugin.
While it is nice that this is possible at all, this causes a bunch of
other problems. The build.xml contains absolute paths pointing to the
Eclipse installation directory of the machine where it was generated, so
it won't work on other machines (with a different Eclipse installation
directory), and it won't work with a newer Eclipse install on the same
machine.
It would be nice if the build configuration would cater for any
bytecode-enhancement needed for the plugin. Currently, we have made two
insertions in the build.xml: one for the invocation of the
enhancer-task, and a <path> specifiying the classpath to be used by the
enhancer. As a simplistic first idea, that would mean two text fields in
the configuration page the text of which would have to be inserted in
two different places in the build.xml