blob: 92cb384065411cbaea386876f73950a915361e52 [file]
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<document>
<properties>
<title>Creating Distributions</title>
<author email="dev@uima.apache.org">Apache UIMA Documentation Team</author>
</properties>
<body>
<section name="Building Apache UIMA distributions">
<p style="font-size:125%">
This page is out of date, not updated since 2017, and predates some major changes
such as switching many projects to GIT from SVN. Please see the release.html
page for current information.
</p>
<p style="font-size:125%">
This page describes how we build distributions for the 2.3.1 and later releases.
See <a href="distribution-before-2.3.1.html">this page</a> for information on
building distributions for the 2.3.0 and prior releases.
</p>
<p>Normally, distributions are built within the release activity; the documentation for
that is <a href="release.html">here</a>, and includes information on how to build and update
the Eclipse update site, used for making our Eclipse plugins installable over the web.
This page focuses on building distributions outside of a release.</p>
<p>Do the <a href="one-time-setup.html">one-time-setup</a>
and the <a href="one-time-release-setup.html">extra setup for GPG signing</a>
if you haven't already done this.
The extra setup page also includes information on setting up for uploading (deploying) to
apache infrastructure - you can skip that if you are not planning on doing that. It also includes
information on setting some properties related to Eclipse - these are only needed for building the
Eclipse update site.</p>
</section>
<section name="Building the Apache UIMA Java SDK distribution">
<p>
Get the code for the trunk or tag or branch (which ever one you want) from SVN:
<pre>mkdir /builduima
cd /builduima
svn export https://svn.apache.org/repos/asf/uima/uimaj/trunk uimasdk
</pre>
This checks out the trunk into the directory /builduima/uimasdk. These
directory and folder names are arbitrary, and can be changed.
</p>
<p>Build the source and binary distributions by doing:
<pre style="font-size: 133%">cd uimasdk/uimaj
mvn package -Papache-release</pre>
This Maven command will also sign the release.
</p>
<p>The build process for base UIMA Java SDK builds individual Jar files suitable for uploading into a Maven repository,
and 2 assemblies
(one for the source and one for the binary distributions). The
individual Jar files are in the <code>target</code> directories of the individual projects they
belong to. The source assembly is in the <code>uimaj/target</code> directory and the binary assembly is
in the <code>uimaj-distr/target</code> directory.
</p>
</section>
<section name="Building Apache UIMA Addons distributions">
<p>
The build process for Addons is similar:
<pre>mkdir /builduima
cd /builduima
svn export https://svn.apache.org/repos/asf/uima/addons/trunk addons
</pre>
This checks out the trunk into the directory /builduima/addons.
</p>
<p>Build the source and binary distributions by doing:
<pre>cd addons
mvn package -Papache-release</pre>
This Maven command will also sign the release.
</p>
<p>The top level project contains in the target directory
the generated source-release.zip archive, and the binary archives.</p>
</section>
</body>
</document>