blob: 8c230e3ed47c890d148fa47b977ec2497db74b91 [file] [log] [blame]
<?xml version="1.0"?>
<!--
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
http://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.
-->
<!-- ====================================================================== -->
<!-- version $Id: installing.xml 215909 2005-07-12 02:05:44Z cam $ -->
<!-- ====================================================================== -->
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Installing Batik</title>
</header>
<body>
<section id="systemRequirements">
<title>System requirements</title>
<p>
Batik requires the following to be already installed in your system:
</p>
<dl>
<dt>Java Runtime Environment</dt>
<dd>
<p>
A Java 1.4 or above compatible runtime environment must be present.
</p>
</dd>
</dl>
</section>
<section id="distributions">
<title>Choosing a distribution to download</title>
<p>
To install Batik, you will need to go to the
<a href="site:download">download page</a> and download one or more ZIP
file containing the distribution of your choice. It is good practice to
<a href="#verify">verify the integrity</a> of the distribution files,
especially if you are using one of our mirror sites. Here are the
various components you will find in the download area and their intended
use:
</p>
<ul>
<li>
<p>
<strong>batik-</strong><em>version</em><strong>.zip</strong> (e.g.,
<code>batik-1.6.zip</code>)
</p>
<p>
The <em>binary distribution</em> contains compiled executable JAR
files that let you get started with Batik easily. This is the
recommended distribution if you want to look at Batik’s features,
or you want to experiment with SVG and see the fun things you can
do with Batik. The binary distribution comes with a set of sample
SVG files.
</p>
</li>
<li>
<p>
<strong>batik-src-</strong><em>version</em><strong>.zip</strong>
(e.g., <code>batik-src-1.6.zip</code>)
</p>
<p>
The <em>source distribution</em> contains a complete snapshot of the
Batik source code, documentation, regression tools and utilities as
well as the script for building Batik. That distribution is a
snapshot of the SVN repository. This is the recommended distribution
for developers who want to dive into the code and understand how
Batik can be integrated in their applications or how Batik can be
extended.
</p>
</li>
<li>
<p>
<strong>batik-docs-</strong><em>version</em><strong>.zip</strong>
(e.g., <code>batik-docs-1.6.zip</code>)
</p>
<p>
The <em>documentation bundle</em> contains a copy of
the Javadoc for the Batik source code.
</p>
</li>
</ul>
<p>
We make nightly copies of the source tree available from the
<a href="http://svn.apache.org/builds/xml-batik">Apache
build</a> server. These builds represent the current state of
development and may or may not be as stable as releases.
There are two types of distributions provided:
</p>
<ul>
<li>
<p>
<strong>batik-svn-</strong><em>date</em><strong>.zip</strong>
(e.g., <code>batik-svn-06-03-29.zip</code>)
</p>
<p>
This contains a complete copy of the Subversion repository trunk,
including support for running <a href="site:test">regard</a>,
Batik’s regression testing utility. In particular this includes all
the reference images for testing. Developers are encouraged to get
these or better use <a href="download.html#svn">Subversion</a>
directly.
</p>
</li>
<li>
<p>
<strong>batik-src-</strong><em>date</em><strong>.zip</strong>
(e.g., <code>batik-src-06-03-29.zip</code>)
</p>
<p>
This contains all the source code and libraries needed to
build and run Batik from source, but does not include the
testing facilities.
</p>
</li>
</ul>
<!--p>
<a href="http://arc.mcc.id.au/batik-nightly/">Unofficial nightly
builds</a> of the latest code from the Subversion repository trunk
are also available.
</p-->
<p>
Older releases are available from the
<a href="http://archive.apache.org/dist/xmlgraphics/batik">Apache archives</a>.
However, we strongly recommend using the current release of Batik.
</p>
<p>In all cases, the user should:</p>
<ul>
<li>
Make sure a Java Development Kit (JDK) is installed on the computer
where Batik will be installed. See the
<a href="#systemRequirements">system requirements</a>. Make sure
that the <code>java</code> runtime is in the <code>PATH</code>
environment variable.
</li>
<li>
Select the directory where he/she wants to download the distribution.
</li>
<li>
Download the desired distribution from the
<a href="site:download">download page</a>.
</li>
<li>
Download the associated PGP signature (.asc) and KEYS file
(preferable) or MD5 hash (.md5). This must be done directly from the
<a href="http://www.apache.org/dist/xmlgraphics/batik">Apache
download</a> area to mean anything.
</li>
<li>
Open a console and go to the directory where the distribution was
downloaded.
</li>
<li>
<a href="#verify">Verify the integrity</a> of the distribution.
</li>
<li>
<p>
Unpack the distribution with Java’s JAR utility:
</p>
<source>jar xvf &lt;distribution&gt;</source>
<p>
For example, if you have downloaded batik-1.6.zip into
/home/IamHere, type the following at the command prompt:
</p>
<source>cd /home/IamHere
jar xvf batik-1.6.zip</source>
<p>
<strong>IMPORTANT:</strong> UNIX users, do not use the
<code>unzip</code> utility to unpack the various Batik zip files,
as this would not set the directories access rights properly.
</p>
</li>
<li>
<p>
If you are using Mac OS X, you can now generate an application
bundle for Squiggle, Batik's SVG browser:
</p>
<source>sh lib/make-squiggle-app.sh</source>
<p>
After running this script, a Finder window will be opened where
you can find the generated Squiggle application bundle. Drag
this to your Applications folder to install it.
</p>
</li>
<li>
Now you can follow the instructions specific to the application you
want to use. For example, see the <a href="site:browser">SVG
Browser</a> page or the <a href="site:rasterizer">SVG
Rasterizer</a> page for an explanation on how to use these tools.
</li>
</ul>
</section>
<section id="optionalComponents">
<title>Optional components</title>
<p>
By default, the Batik source distribution comes with the
<a href="http://www.mozilla.org/rhino/">Mozilla Rhino</a> JavaScript
Engine (<code>js.jar</code>).
</p>
<p>
To enable other scripting languages support, you will only need to
install the correct jar files in <code>lib</code> directory of Batik and
recompile your distribution.
</p>
<ul>
<li>
For Python, you need to download Jython distribution at
<a href="http://www.jython.org/">http://www.jython.org/</a>. Then
you put the <code>jython.jar</code> file in the Batik <code>lib</code>
directory.
</li>
<li>
For Tcl, you need to download Jacl &amp; TclBlend distribution at
<a href="http://dev.scriptics.com/software/java/">http://dev.scriptics.com/software/java/</a>.
Then you put the <code>jacl.jar</code> and <code>tcljava.jar</code>
files in the Batik <code>lib</code> directory.
</li>
</ul>
<p>
Conversely, you can remove the <code>js.jar</code> of the Batik
<code>lib</code> directory to remove JavaScript support and have a
smaller distribution.
</p>
</section>
<section id="dependencyGraph">
<title>Jar file dependency graph</title>
<warning label="Out of date">
<p>
Note that the dependency graph in this section is out of date,
and needs to be updated.
</p>
</warning>
<p>
The Batik distribution comes with many jar files. Not all of them are
needed in every case (although the provided applications tend to use
most of them). The following is a diagram showing the dependencies
between the various jar files in the Batik binary distribution (it also
shows the major package interdependencies for source developers).
</p>
<p>
Jar files in white boxes are library jar files that Batik includes from
external sources. The light blue boxes correspond to library jar files
(those found in the <code>lib</code> directory of a binary distribution)
built from Batik source code. The dark blue boxes represent the
application jar files.
</p>
<p>
When boxes touch, the box on top depends on the box below it (there is
no horizontal touching). Arrows also indicate dependencies (the source
of the arrow depends on the destination). In some cases a thick
underline with an arrow is used to indicate that a large number of jar
files share a common dependency, this however does not indicate any
dependency between the jar files underlined.
</p>
<div class="figure"><img src="jarDependImg.png"
alt="Batik jar file dependency graph"/></div>
<note>
Some jar file names are shortened for clarity. All <code>batik</code>
package references are short for <code>org.apache.batik</code>.
</note>
<p>
It is worth pointing out that a determined/clever programmer may be able
to pare down some of these dependencies. For example the
<code>batik-dom.jar</code> depends on <code>xerces.jar</code> because of
the <code>SAXDocumentFactory</code> class in
<code>org.apache.batik.dom.util</code>. If you didn’t need to parse XML
it would be possible to ignore or break this dependency and still use
the <code>batik-dom.jar</code> file for its DOM implementation.
</p>
</section>
<section id="verify">
<title>Verify releases</title>
<p>
It is essential that you verify the integrity of the downloaded files
using the PGP or MD5 signatures.
</p>
<p>
The PGP signatures can be verified using PGP or GPG. First download the
<a href="http://www.apache.org/dist/xmlgraphics/batik/KEYS">KEYS</a> as well as
the <code>asc</code> signature file for the particular distribution you
choose. Make sure you get these files from the
<a href="http://www.apache.org/dist/xmlgraphics/batik/">main distribution
directory</a>, rather than from a mirror. Then verify the signatures
using:
</p>
<source>pgpk -a KEYS
pgpv batik-1.6.zip.asc</source>
<p><em>or</em></p>
<source>pgp -ka KEYS
pgp batik-1.6.zip.asc</source>
<em>or</em><br/>
<source>gpg --import KEYS
pgp batik-1.6.zip.asc</source>
<p><em>or</em></p>
<source>gpg --import KEYS
gpg --verify batik-1.6.zip.asc</source>
<p>
Alternatively, you can verify the MD5 signature on the files. A UNIX
program called <code>md5</code> or <code>md5sum</code> is included in
many UNIX distributions. It is also available as part of
<a href="http://www.gnu.org/software/textutils/textutils.html">GNU
Textutils</a>. Windows users can get binary md5 programs
from <a href="http://www.fourmilab.ch/md5/">here</a>,
<a href="http://www.pc-tools.net/win32/freeware/console/">here</a>,
or <a href="http://www.slavasoft.com/fsum/">here</a>.
</p>
<p>
We recommend using PGP signatures as they can provide a much higher
level of assurance compared with MD5.
</p>
</section>
</body>
</document>