# Release Notes - okapi-lib 0.31, Oct-23-2016

- Overview
- Requirements and Installation
- JAR Dependencies
- Support

## Overview

The okapi-lib distribution is a collection of Java classes design to help in programming components and applications related to translation and localization tasks. It offers a low-level resource model, as well as a set of common API to extract text parts from their original format, modify them, and merge them back. The library also provides facilities to manipulate, annotate and in general, work with the extracted text.

The distribution comes also with Tikal, a command-line tool to execute some simple localization-related tasks, like extraction and merge of XLIFF documents. If you want to use others Okapi tools (e.g. Rainbow), download one of the platform-specific okapi-apps distributions.

For a list of changes since the previous release, please see the Changes Log document.

Note that parts of this project are still relatively new and still in development. Some of the classes, interfaces and internal workings presented here may change in the upcoming versions of the Okapi Framework.

This distribution contains the following:

`lib` | All the files needed to run the non-UI Okapi libraries. This directory includes the different dependencies some of the components need. See the JAR Dependencies section for details. If you want to use any of the Okapi UI classes, you need to download the okapi-apps distribution, which is platform-specific (because the UI classes use SWT).
`config` | Various default configuration files (e.g. segmentation rules, additional filter configurations, etc.)
`examples` | A few Java examples on how to use the library in your own programs. See the examples' readme file for details.
`dropins` | The directory where you can drop plug-ins.
`localweb/devguide` | The local copy of the Developer's Guide page for this release.
`localweb/javadoc` | The local copy of the JavaDoc pages for this release.

The latest version of all documents and help is always available on-line, at the Okapi Framework Web site.

## Requirements and Installation

### Requirements

- Windows: You must have a running installation of Java 1.7 or later (Sun Java, or an OpenJDK VM are recommended).
- Linux: You must have a running installation of Java 1.7 or later (Sun Java, or an OpenJDK VM are recommended).
- Macintosh: You must have a running installation of Java 1.7 or later.

### Installation

To install the Okapi libraries:

1. Download the ZIP file of the distribution.
2. Extract the file on any location. Make sure to preserve the full paths when extracting.

### Uninstallation

To uninstall the Okapi libraries

1. To uninstall the distribution you can simply delete the folder where you have installed it.

## JAR Dependencies

Several Okapi packages depend on third-party libraries. While the Okapi packages are distributed in a single JAR file, it is easy to build separate JAR files if needed.

For more information on what third-party libraries are used with which package, see the `pom.xml` file of each package in the source code: http://code.google.com/p/okapi/source/browse/#svn/trunk

Currently most dependencies are for the connectors and for some filters and steps. The Okapi core package has no dependencies.

## Support

The `examples` directory contains source code of examples in Java that use the Okapi libraries.

If you have questions, suggestions or bug to report, you can do this different ways:

- Read and post notes in the Okapi Tools users group (you need to be registered member to post, but not to read).
- Read an post issue report on the Google Code project site.