Ian,
We maven-ized our local/custom build of OpenReports, which has dependencies
on BIRT. We created a separate pom project to manage the entire set of BIRT
dependencies as a single unit and had to manually install most the
dependencies into our repository manager.
Note, we haven't used the BIRT features of OpenReports much so I can't say
the versions are perfect. They do produce a successful compile/package of
the OpenReports war, I just can't confirm the runtime behavior.
Here's the pom with only a few minor company-specific elements removed...
<?xml version="1.0" encoding="UTF-8"?>
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>YOUR GROUP ID HERE</groupId>
<artifactId>eclipse-birt-bundle</artifactId>
<name>Eclipse BiRT Bundle</name>
<version>2.2.0-1-SNAPSHOT</version>
<packaging>pom</packaging>
<dependencies>
<!--
Most of these dependencies required manual installation into our
repositories so we could match as closely as possible
the version that were delivered with OpenReports 3.0.0.
If/when the Eclipse projects artifacts are deployed publicly and
consistently then we
can update this bundle POM and track their versions.
-->
<dependency>
<groupId>org.eclipse.birt</groupId>
<artifactId>chartengine</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>org.eclipse.birt</groupId>
<artifactId>core</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>org.eclipse.birt</groupId>
<artifactId>dataadapter</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>org.eclipse.birt</groupId>
<artifactId>engine</artifactId>
<version>2.2</version>
<exclusions>
<exclusion>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.eclipse.birt</groupId>
<artifactId>model</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>org.eclipse.birt</groupId>
<artifactId>script</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>org.eclipse.birt</groupId>
<artifactId>dte</artifactId>
<version>2.2</version>
</dependency>
<!-- EMF (Eclipse Modeling Framework ) -->
<dependency>
<groupId>org.eclipse.emf</groupId>
<artifactId>ecore</artifactId>
<version>2.2.2.v200702131851</version>
</dependency>
<dependency>
<groupId>org.eclipse.emf</groupId>
<artifactId>ecore-xmi</artifactId>
<version>2.2.2.v200702131851</version>
</dependency>
<dependency>
<groupId>org.eclipse.emf</groupId>
<artifactId>common</artifactId>
<version>2.2.1.v200702131851</version>
</dependency>
<!-- W3C -->
<dependency>
<groupId>org.w3c</groupId>
<artifactId>flute</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>org.w3c</groupId>
<artifactId>sac</artifactId>
<version>1.3</version>
</dependency>
<!-- Commons -->
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.3</version>
<!-- removing unwanted transitive dependencies -->
<exclusions>
<exclusion>
<artifactId>junit</artifactId>
<groupId>junit</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>commons-cli</groupId>
<artifactId>commons-cli</artifactId>
<version>1.0</version>
<!-- removing unwanted transitive dependencies -->
<exclusions>
<exclusion>
<artifactId>commons-lang</artifactId>
<groupId>commons-lang</groupId>
</exclusion>
<exclusion>
<artifactId>commons-logging</artifactId>
<groupId>commons-logging</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>commons-discovery</groupId>
<artifactId>commons-discovery</artifactId>
<version>0.2</version>
</dependency>
<!-- misc -->
<dependency>
<groupId>com.lowagie</groupId>
<artifactId>itext</artifactId>
<version>1.3</version>
</dependency>
<dependency>
<groupId>com.ibm.icu</groupId>
<artifactId>icu4j</artifactId>
<version>3.6.1</version>
</dependency>
<dependency>
<groupId>rhino</groupId>
<artifactId>js</artifactId>
<version>1.6R2</version>
</dependency>
</dependencies>
</project>
On Mon, Jul 28, 2008 at 10:24 AM, Ian Coleman <[EMAIL PROTECTED]> wrote:
> Maven gurus:
>
> I'm still finding my way with Maven, and am trying to convert a project
> from
> Ant to maven2. The biggest blocker I've found is integration with BIRT.
> The application I'm converting uses BIRT extensively, but there's 1) no
> BIRT
> in the main maven2 repo; 2) BIRT has dozens of un-mavenized dependencies;
> and 3) the BIRT community seems to have never actually heard of Maven, or
> reproduceable builds in general.
>
> There is literally *nothing* I've been able to find out there demonstrating
> any *sane* way of using Maven to build an application using BIRT runtime as
> a dependency.
>
> I'm sure I'm not the first person to have needed to do this, but it sure
> starting to feel that way... grr..
>
> Any kind soul want to touch this?
>
> Thanks!
>
> --Ian
>