ship Maven meta information to ease creation of LO plugins with Maven

Michael Stahl mstahl at redhat.com
Tue Apr 1 04:19:45 PDT 2014


On 01/04/14 11:16, Bjoern Michaelsen wrote:
> Hi,
> 
> On Tue, Apr 01, 2014 at 10:53:22AM +0200, Stephan Bergmann wrote:
>> On 03/31/2014 09:46 PM, Sebastian Humenda wrote:
>>> to build software with Maven, you have to provide meta information (a pom.xml)
>>> to each jar, which is a dependency of your software. In turn, the build system
>>> Maven with automatically figure out which jar to fetch from where and in which
>>> version. To simplify the creation of Java dependencies for LO and to ease also the
>>> packaging of LO extension in Debian/Ubuntu, it would be of much help, if you
>>> could ship those pom.xml for this use case with the source. This meta
>>> information is easy and quick to generate and the only maintenance overhead is
>>> the version number increase at each LO release. You don't need to also use Maven
>>> for building LO, you just have to ship one pom.xml for one jar file.
>>
>> The LO jars generally need to be located at specific places within a
>> LO installation tree.  I am not sure that is compatible with the
>> Maven concepts.
> 
> isnt this what Rene already implemented for Debian (and thus Ubuntu) with:
> 
>  http://anonscm.debian.org/gitweb/?p=pkg-openoffice/libreoffice.git;a=commit;h=1c130152fdb881db51543513ddafb212ff5c6df2
> 
> So do you want that to be upstreamed?

isn't this sort of the same as this upstream commit:

commit 78e4b97a18a18f84c228de64fc48cee48138fbfe
Author:     David Ostrovsky <david at ostrovsky.org>
AuthorDate: Sun Oct 27 20:32:40 2013 +0100

    Set up tool chain to install LO artifacts in Maven repositories

    Add <path_to_libo>/bin to your path.
    After full LO compile, the LO Java artifacts can be installed in the
local
    Maven repository:

    mvn.py -a install -v 4.2.0 -s juh:jar:<path_to>/juh.jar
    mvn.py -a install -v 4.2.0 -s jurt:jar:<path_to>/jurt.jar
    mvn.py -a install -v 4.2.0 -s ridl:jar:<path_to>/ridl.jar
    mvn.py -a install -v 4.2.0 -s unoil:jar:<path_to>/unoil.jar

    With the artifacts installed this way, it is now possible
    to consume LO artifacts from custom pom.xml:

    [...]
      <properties>
        <LibreOffice-Version>4.2.0</LibreOffice-Version>
      </properties>
    [...]
      <dependencies>
        <dependency>
          <groupId>org.libreoffice</groupId>
          <artifactId>juh</artifactId>
          <version>${LibreOffice-Version}</version>
          <scope>provided</scope>
        </dependency>
        <dependency>
          <groupId>org.libreoffice</groupId>
          <artifactId>jurt</artifactId>
          <version>${LibreOffice-Version}</version>
          <scope>provided</scope>
        </dependency>
        <dependency>
          <groupId>org.libreoffice</groupId>
          <artifactId>ridl</artifactId>
          <version>${LibreOffice-Version}</version>
          <scope>provided</scope>
        </dependency>
        <dependency>
          <groupId>org.libreoffice</groupId>
          <artifactId>unoil</artifactId>
          <version>${LibreOffice-Version}</version>
          <scope>provided</scope>
        </dependency>
      </dependencies>




More information about the LibreOffice mailing list