This project is a simple wrapper around the very excellent and robust Tika text extraction Java library. This project produces two nugets:
- TikaOnDotNet - A straight IKVM hosted port of Java Tika project.
- TikaOnDotNet.TextExtractor - Use Tika to extract text from rich documents.
The build automation expects the source to reside within a Git repo so the first step is to clone the repo using Git.
git clone https://github.com/KevM/tikaondotnet.git
This project uses FAKE for build automation and Paket for managing dependencies.
Note: Your first build should be from the command line to get the assembly version file created.
./build.cmd
The default build will run our Tika text extraction integration tests.
It's easy to produce updated .nupkg
packages.
./build.cmd PackageNugets
Look in ./artifacts
for the resulting .nupkg
files.
When a new Tika release comes out you can follow the instructions below to get on the newest version.
- Edit the
paket.dependencies
file to point to the new release of the Tika Jar file. ./build.cmd PackageNugets
Follow this quick procedure to find the latest Tika release Jar archive:
- Visit the Tika download page
- Click on the Mirrors for tika-app-.jar link.
- Find the Jar hosted on www-us.apache.org.
- Copy this url into
paket.dependencies
.
Note: The automation looks for the Tika Jar file under paket-files/<hostname>/*.jar
. If you do not use the www-us.apache.org url you'll need to update build.fsx
.
When a new release of IKVM comes out you can follow the instructions below to get on the newest version.
- Edit the
paket.dependencies
file
- Point the IKVM tools binary to the new release.
- Point the IKVM nuget to the matching version of the Nuget.
./build.cmd PackageNugets
Note: The automation looks for the IKVM compiler in ./bin/ikvmc.exe
of the expanded archive in paket-files
.
You should make sure that paket.depdendencies
linked to the same version for the Nuget of IKVM and the build tools
//IKVM dependencies - the nuget and tool versions need to be in sync.
nuget IKVM <version>
http http://www.frijters.net/ikvmbin-<version>.zip
Looking for updated versions of IKVM? Check out their blog.
- Update the
Release-Notes.md
adding a new section for the next version. This is really important because it controls the version number of the assemblies and nuget packages. - Tag the release commit.
git tag -a v{version} -m "Ship it!"
- Push the tag
git push origin --tags
Appveyor is setup to to automatically push tagged commits to Nuget.