Reputation: 1846
I am new to Eclipse development and I have been trying to build the BIRT designer RCP without success.
My goal is to customize the BIRT designer, e.g. removing some views and menus, setting fixed data sources and templates, restricting some actions, etc, and then embed it in my own application, which wouldn't only be for reporting.
Now, I have imported the BIRT Plug-ins in Eclipse from different sources, but there is always errors that I cannot get rid of.
I downloaded the designer RCP sources as a set of plugins, then I imported them into Eclipse by selecting org.eclipse.birt.report.designer.ui.rcp
first and then hitting the button labeled "Required Plug-ins ->" to add the dependencies.
I noticed there are some plug-ins with two versions, one with a JAR and one tagged as "qualifier" that includes the src
directory; I had to manually remove the non-qualifier version to include the qualifier one --I don't know why the classes in the JAR wouldn't be found.
Then I had to add some plugins not included in the downloaded sources, e.g. the datatools
plug-ins. I got these from the "all-in-one" download of BIRT. I suppose I end up with a mix of plugins from the designer RCP download and the all-in-one download, but same version (4.4.2 last time).
I also tried the other way around, i.e. start off of the all-in-one download (but the RCP is missing in the all-in-one download). I was able to launch org.eclipse.birt.report.designer.ui
as an Eclipse application but, surprisingly, BIRT was not there at all. Furthermore, many errors were reported, e.g. "Bundle was not resolved because of a uses contraint violation".
Even when I get rid of all the compilation problems, unresolved requirement are thrown at runtime when I launch it as an Eclipse app, the most common being about batik version: both 1.6 and 1.7 are included because I think both are required but 1.6 cannot be resolved, despite being there.
That is supposed to be the first step on the way to my goal, but I cannot even build the designer RCP.
I read the Eclipse docs about plug-in development but I am a bit lost now because nothing seems to work. I tried different versions of BIRT and Eclipse (currently BIRT 4.4.2 and Eclipse 4.4.2).
Any help will be highly appreciated. It's been a week with this and I'm afraid I will have to give up and approach another framework if I cannot deliver any result soon. Thanks in advance.
Upvotes: 2
Views: 694
Reputation: 1846
After struggling for a couple of weeks I came to realize that Eclipse plugin development is not what I expected.
I tried everything as explained in my question and I couln't even build the Report Designer RCP application from sources.
Now, for me, Eclipse dependency management is very flawed, plugin development (based on the OSGI model) too complicated and the IDE itself very unstable. Dealing with Eclipse plugin development was some of the most frustrating time as a software developer in my life.
If you are not fine with the Designer RCP as shipped, you better try Pentaho Reporting.
Pentaho Reporting is also Java, and has an open source report designer which is available in GitHub. It has proper building tools: you can use either Maven or Ant+Ivy. Everything in the building process works as expected, it is just a matter of two commands and you end up with a Java application that executes perfectly. I even started doing my own modifications to the sources and building to see the changes take effect. Just awesome!
As a colophon, I encourage you to abandon Birt and give Pentaho a try. I wasted two whole weeks with Birt and Eclipse to attain nothing, whereas in one day I could outline my way with Pentaho Reporting. And there is much more than just the report designer.
Hope this saves you some valuable time.
Upvotes: 4