Difference between revisions of "Uno/Java/MavenBundles"

From Apache OpenOffice Wiki
< Uno‎ | Java
Jump to: navigation, search
(Maven Bundles for Java Uno JARs)
(Maven Bundles for Java Uno JARs)
Line 3: Line 3:
 
[http://maven.apache.org Maven] 2 is a popular Java build tool that provides many useful features for building Java projects, including dependency management.
 
[http://maven.apache.org Maven] 2 is a popular Java build tool that provides many useful features for building Java projects, including dependency management.
  
This document is a '''proposal''' to make the Java Uno JAR files available to the Maven Central Repository, so that projects that use Java Uno can fully benefit from Maven dependency management features.
+
The Java Uno JAR files are available from the Maven Central Repository, so that projects that use Java Uno can fully benefit from Maven dependency management features.
  
The JAR files, or ''artifacts'', to be made available would be
+
The available JAR files, or ''artifacts'', are
 
* juh.jar
 
* juh.jar
 
* jurt.jar
 
* jurt.jar
 
* ridl.jar
 
* ridl.jar
 
* unoil.jar
 
* unoil.jar
 +
 +
To include those Java/Uno libraries into your project managed by Maven you'll typically declare the following dependencies in your <code>pom.xml</code>:
 +
<pre>
 +
  <dependency>
 +
    <groupId>org.openoffice</groupId>
 +
    <artifactId>juh</artifactId>
 +
    <version>2.1.0</version>
 +
    <scope>compile</scope>
 +
  </dependency>
 +
  <dependency>
 +
    <groupId>org.openoffice</groupId>
 +
    <artifactId>jurt</artifactId>
 +
    <version>2.1.0</version>
 +
    <scope>compile</scope>
 +
  </dependency>
 +
  <dependency>
 +
    <groupId>org.openoffice</groupId>
 +
    <artifactId>ridl</artifactId>
 +
    <version>2.1.0</version>
 +
    <scope>compile</scope>
 +
  </dependency>
 +
  <dependency>
 +
    <groupId>org.openoffice</groupId>
 +
    <artifactId>unoil</artifactId>
 +
    <version>2.1.0</version>
 +
    <scope>compile</scope>
 +
  </dependency>
 +
</pre>
 +
== Upload Procedure ==
 +
 +
The following information describes how to upload new versions of the JARs to the Maven repository; if you just want to use the JARs you don't need to read it.
  
 
The upload procedure is detailed in [http://maven.apache.org/guides/mini/guide-ibiblio-upload.html Guide to uploading artifacts to The Central Repository]. New bundles would be created and uploaded at each OpenOffice.org stable release.
 
The upload procedure is detailed in [http://maven.apache.org/guides/mini/guide-ibiblio-upload.html Guide to uploading artifacts to The Central Repository]. New bundles would be created and uploaded at each OpenOffice.org stable release.
Line 15: Line 46:
 
Each ''artifact'' (JAR file) needs to be packaged into a ''bundle'' that also includes an XML file (''pom.xml'') containing information about the artifact, including name, description, version, license, and dependencies.
 
Each ''artifact'' (JAR file) needs to be packaged into a ''bundle'' that also includes an XML file (''pom.xml'') containing information about the artifact, including name, description, version, license, and dependencies.
  
The proposed values to be provided in the XML description files are
+
The values provided in the XML description files are
  
 
{| border="1"
 
{| border="1"
Line 38: Line 69:
 
| colspan="2" | '''Artifact: juh'''
 
| colspan="2" | '''Artifact: juh'''
 
|-
 
|-
| artifactId || openoffice.org-juh
+
| artifactId || juh
 
|-
 
|-
 
| name || OpenOffice.org "javaunohelper" module
 
| name || OpenOffice.org "javaunohelper" module
Line 44: Line 75:
 
| description || Various tools and adapters for Java Uno.
 
| description || Various tools and adapters for Java Uno.
 
|-
 
|-
| dependencies || openoffice.org-jurt, openoffice.org-ridl
+
| dependencies || jurt, ridl
 
|-
 
|-
 
| colspan="2" | '''Artifact: jurt'''
 
| colspan="2" | '''Artifact: jurt'''
 
|-
 
|-
| artifactId || openoffice.org-jurt
+
| artifactId || jurt
 
|-
 
|-
 
| name || OpenOffice.org "jurt" module
 
| name || OpenOffice.org "jurt" module
Line 54: Line 85:
 
| description || JURT stands for "Java Uno Runtime". The JURT module basically implements Java Uno.
 
| description || JURT stands for "Java Uno Runtime". The JURT module basically implements Java Uno.
 
|-
 
|-
| dependencies || openoffice.org-ridl
+
| dependencies || ridl
 
|-
 
|-
 
| colspan="2" | '''Artifact: ridl'''
 
| colspan="2" | '''Artifact: ridl'''
 
|-
 
|-
| artifactId || openoffice.org-ridl
+
| artifactId || ridl
 
|-
 
|-
 
| name || OpenOffice.org "ridl" module
 
| name || OpenOffice.org "ridl" module
Line 68: Line 99:
 
| colspan="2" | '''Artifact: unoil'''
 
| colspan="2" | '''Artifact: unoil'''
 
|-
 
|-
| artifactId || openoffice.org-unoil
+
| artifactId || unoil
 
|-
 
|-
 
| name || OpenOffice.org "unoil" module
 
| name || OpenOffice.org "unoil" module
Line 74: Line 105:
 
| description || Java class files generated from the IDL Files to create the Java UNO Interface.
 
| description || Java class files generated from the IDL Files to create the Java UNO Interface.
 
|-
 
|-
| dependencies || openoffice.org-ridl
+
| dependencies || ridl
 
|}
 
|}
  
 
[[Category:Uno:Java]]
 
[[Category:Uno:Java]]

Revision as of 17:26, 30 January 2007

Maven Bundles for Java Uno JARs

Maven 2 is a popular Java build tool that provides many useful features for building Java projects, including dependency management.

The Java Uno JAR files are available from the Maven Central Repository, so that projects that use Java Uno can fully benefit from Maven dependency management features.

The available JAR files, or artifacts, are

  • juh.jar
  • jurt.jar
  • ridl.jar
  • unoil.jar

To include those Java/Uno libraries into your project managed by Maven you'll typically declare the following dependencies in your pom.xml:

  <dependency>
    <groupId>org.openoffice</groupId>
    <artifactId>juh</artifactId>
    <version>2.1.0</version>
    <scope>compile</scope>
  </dependency>
  <dependency>
    <groupId>org.openoffice</groupId>
    <artifactId>jurt</artifactId>
    <version>2.1.0</version>
    <scope>compile</scope>
  </dependency>
  <dependency>
    <groupId>org.openoffice</groupId>
    <artifactId>ridl</artifactId>
    <version>2.1.0</version>
    <scope>compile</scope>
  </dependency>
  <dependency>
    <groupId>org.openoffice</groupId>
    <artifactId>unoil</artifactId>
    <version>2.1.0</version>
    <scope>compile</scope>
  </dependency>

Upload Procedure

The following information describes how to upload new versions of the JARs to the Maven repository; if you just want to use the JARs you don't need to read it.

The upload procedure is detailed in Guide to uploading artifacts to The Central Repository. New bundles would be created and uploaded at each OpenOffice.org stable release.

Each artifact (JAR file) needs to be packaged into a bundle that also includes an XML file (pom.xml) containing information about the artifact, including name, description, version, license, and dependencies.

The values provided in the XML description files are

Element Value
Common to all artifacts
groupId org.openoffice
version the OOo version that shipped this JAR, e.g.: 2.1.0
url http://udk.openoffice.org
license name GNU Lesser General Public License, Version 2.1
license url http://www.openoffice.org/licenses/lgpl_license.html
scm url http://udk.openoffice.org/source/browse/api/
scm connection scm:cvs:pserver:anoncvs@anoncvs.services.openoffice.org:/cvs
Artifact: juh
artifactId juh
name OpenOffice.org "javaunohelper" module
description Various tools and adapters for Java Uno.
dependencies jurt, ridl
Artifact: jurt
artifactId jurt
name OpenOffice.org "jurt" module
description JURT stands for "Java Uno Runtime". The JURT module basically implements Java Uno.
dependencies ridl
Artifact: ridl
artifactId ridl
name OpenOffice.org "ridl" module
description The "ridljar" module implements the base types for the Java Uno typesystem, as well as a types access library.
dependencies -
Artifact: unoil
artifactId unoil
name OpenOffice.org "unoil" module
description Java class files generated from the IDL Files to create the Java UNO Interface.
dependencies ridl
Personal tools