
Apache UIMA Ruta v2.0.1
-------------------------------------------------------------------------

Building from the Source Distribution
-------------------------------------

We use Maven 3.0 or later for building; download this if needed, 
and set the environment variable MAVEN_OPTS to -Xmx800m -XX:MaxPerSize=256m.

Then do the build by going into the UIMA Ruta directory, and issuing the command
   mvn clean install
   
This builds everything except the ...source-release.zip file. If you want that,
change the command to 

   mvn clean install -Papache-release
   
For more details, please see http://uima.apache.org/building-uima.html   

-------------------------------------

This product was originally released as Apache UIMA TextMarker. The UIMA Ruta Workbench provides
a command for updating old projects. Please right-click on a project and select "UIMA Ruta -> Update Project". 

-------------------------------------

If you use the uimaFIT JCasGenPomFriendly in Maven and want to use UIMA Ruta 
as a standalone annotator you have to exclude the generated UIMA Ruta basic 
type files from the build, e.g., by adding:

   <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.0</version>
    <configuration>
         <excludes>
             <exclude>org/apache/uima/ruta/type/*.java</exclude>
         </excludes>
    </configuration>
   </plugin> 



