2

I'm about the setup an automatic (command-line) build for my Eclipse RCP Application.

I have found out the following ways to do it:

  • Buckminster
  • Using Maven with the pde-maven-plugin
  • Headless PDE Build

The problem with all these options is that they require me to create essentially a new representation of the information already contained in my target platform definition. For example in Buckminster, this would be the .rmap file.

In my thinking all the information to build the product should be already there when I have the following:

  • Plugin project with product configuration file (foo.product)
  • Target platform definition file (foo.target)

Therefore I would expect there to be a command like the following:

build-rcp-product foo.product foo.target win32

Is there anything like that which I may have missed?

Francis Upton IV
  • 19,322
  • 3
  • 53
  • 57
Juho Ojala
  • 233
  • 2
  • 10

3 Answers3

3

With Buckminster you don't need to replicate the information in your target definition file. You can simply import the target file using the importtargetdefinition command. If all your dependencies defined in the target definition file, then in the rmap you define only from where to materialize your plugins (svn, git, maven, file system etc).

With PDE build, there is a filed request (Bug 266311) and it seems it is still not possible to utilize the target file directly but there are some workarounds suggested in there (which I didn't try, I am using Buckminster).

hakan
  • 1,801
  • 15
  • 14
  • If you use the same workspace for buckminster as for development, you don't need rmap at all, neither do you need importtargetdefinition. Use '-data path/to/workspace' as a buckminster argument, and then skip the two 'import' statements in the script found at [link](http://www.ralfebert.de/blog/eclipsercp/rcp_builds/) – Tobber May 09 '12 at 14:12
0

I use the PDE build and it's pretty simple. It essentially gets what it needs from the MANIFEST.MF file and the build.properties file.

The command to run it is more complicated, as you have to start Eclipse and point it to a few things, but it's very well integrated with the IDE. It does everything by making Ant scripts.

Francis Upton IV
  • 19,322
  • 3
  • 53
  • 57
  • 1
    What you are referring works only if all the required plugins are already in a given folder. I would like them to be automatically fetched from the locations defined in my target platform definition (foo.target). – Juho Ojala Dec 27 '11 at 14:56
0

you can try tycho
here's a good start:
Tycho tutorial
Reference card
with tycho, all you need is a POM and you usually will not change this information, which is generated via maven

Luiz E.
  • 6,769
  • 10
  • 58
  • 98