Tika 0.6 : compilation et dépendances

Publié le mars 11, 2010

tikaTika est une librairie Java qui a pour but l’extraction du texte de toutes sortes de formats de fichiers : PDF, office,  html, … (la liste complète est disponible ici). Afin d’utiliser cette librairie dans vos projets java, il faut en récupérer les sources, les compiler et également récupérer les librairies dont dépend Tika. Voici la procédure à suivre ainsi qu’une astuce pour palier à un problème de compilation.

Etape 1 : Récupérer les sources

Les sources sont disponibles à partir de la page http://lucene.apache.org/tika/download.html

Décompresser l’archive dans un répertoire de travail /tmp/tika-0.6

Etape 2 : Compilation.

Le moyen le plus simple est d’utiliser maven 2.

On se place dans le répertoire de travail

cd /tmp/tika-0.6

On positionne la variable d’environnement LC_ALL afin de ne pas avoir d’erreur durant la compilation (l’astuce) et on alloue par la même occasion suffisamment de mémoire de pour maven

export LC_ALL=en_US.UTF-8
export MAVEN_OPTS="-Xmx2048m"

On lance la compilation

mvn install

4 fichiers jar sont générés

find . -name *.jar -print
./tika-app/target/tika-app-0.6.jar
./tika-bundle/target/tika-bundle-0.6.jar
./tika-core/target/tika-core-0.6.jar
./tika-parsers/target/tika-parsers-0.6.jar

Pour utiliser Tika dans une application, seules les 2 jars suivants sont indispensables :

./tika-core/target/tika-core-0.6.jar
./tika-parsers/target/tika-parsers-0.6.jar

Par contre, tika-parser-0.6.jar requière un certain nombre de librairies tierces. Les récupérer est la troisième étape.

Etape 3 : Récupération des dépendances

On se place dans le répertoire des sources de tika-parser

cd tika-parsers

On demande à maven de récupérer les dépendances

mvn dependency:copy-dependencies

Les dépendances sont disponibles dans le sous-répertoire target/dependency et il s’agit de:

./target/dependency/asm-3.1.jar
./target/dependency/commons-compress-1.0.jar
./target/dependency/commons-logging-1.1.1.jar
./target/dependency/dom4j-1.6.1.jar
./target/dependency/fontbox-0.8.0-incubator.jar
./target/dependency/geronimo-stax-api_1.0_spec-1.0.1.jar
./target/dependency/hamcrest-core-1.1.jar
./target/dependency/jempbox-0.8.0-incubator.jar
./target/dependency/junit-3.8.1.jar
./target/dependency/log4j-1.2.14.jar
./target/dependency/metadata-extractor-2.4.0-beta-1.jar
./target/dependency/mockito-core-1.7.jar
./target/dependency/objenesis-1.0.jar
./target/dependency/pdfbox-0.8.0-incubating.jar
./target/dependency/poi-3.6.jar
./target/dependency/poi-ooxml-3.6.jar
./target/dependency/poi-ooxml-schemas-3.6.jar
./target/dependency/poi-scratchpad-3.6.jar
./target/dependency/tagsoup-1.2.jar
./target/dependency/xml-apis-1.0.b2.jar
./target/dependency/xmlbeans-2.3.0.jar



Tags: , ,

Laissez un commentaire

Navigation

Categories
  •  Technique (36)
  •  Lucene / Solr (22)
  •  Moteur de recherche (19)
  •  Sites à découvrir (12)
  •  Web 2.0 (12)
  •  Productivité (11)
  •  Web (7)
  •  Debian (6)
  •  Flux RSS (6)
  •  Wordpress (4)
  •  Hébergement (3)
  •  Non classé (3)
  •  Freelance (2)
  •  Mac OS (2)
  •  Référencement (2)
  •  vmware (2)
  •  MongoDB (1)
  •  PHP (1)
  •  Réseaux (1)
  •  ezPublish (1)
  • Tags
  •  Solr (15)
  •  Lucene / Solr (11)
  •  Wordpress (6)
  •  RSS (5)
  •  java (5)
  •  tomcat (4)
  •  vmware (4)
  •  Crawler (3)
  •  Debian (3)
  •  OPML (3)
  •  PHP (3)
  •  Plugins (3)
  •  Crossfeeds (2)
  •  apt (2)
  •  git (2)
  •  mercurial (2)
  •  moteur de recherche (2)
  •  mysql (2)
  •  svn (2)
  •  Agrégateur (1)
  •  Bitbucket (1)
  •  CAS (1)
  •  Debugbar (1)
  •  ESXi (1)
  •  Emilie Ogez (1)
  •  Fast (1)
  •  Firebug (1)
  •  Firefox (1)
  •  Flux RSS (1)
  •  Freelance (1)
  •  Google Chrome (1)
  •  Huridocs (1)
  •  Hurisearch (1)
  •  IE (1)
  •  IETester (1)
  •  Migration Day 2008 (1)
  •  Ogez (1)
  •  Poll (1)
  •  Référencement (1)
  •  SEO (1)
  •  Savoirs en réseau (1)
  •  Sondage (1)
  •  SurveyGizmo (1)
  •  WP-Poll (1)
  •  aiderss (1)
  •  ant (1)
  •  apache (1)
  •  aptitude (1)
  •  backup (1)
  •  bande passante (1)
  •  base de registre (1)
  •  catégorie (1)
  •  configuration (1)
  •  curl (1)
  •  dell (1)
  •  detection langue (1)
  •  dojo (1)
  •  débit (1)
  •  etch (1)
  •  extjs (1)
  •  ezfind (1)
  •  ezpublish (1)
  •  framwork (1)
  •  gateway (1)
  •  google (1)
  •  hg (1)
  •  hosted (1)
  •  hosting (1)
  •  iis (1)
  •  indeed (1)
  •  javascript (1)
  •  jdk (1)
  •  jquery (1)
  •  log (1)
  •  magpie (1)
  •  mamp (1)
  •  mg4j (1)
  •  mod_auth_cas (1)
  •  mod_cas (1)
  •  mongodb (1)
  •  mootools (1)
  •  morphologique (1)
  •  n-gram (1)
  •  ngp (1)
  •  ngram (1)
  •  ngramj (1)
  •  nightly build (1)
  •  nuage de tags (1)
  •  openSSL (1)
  •  openSUSE (1)
  •  optimisation (1)
  •  pagerank (1)
  •  patch (1)
  •  performances (1)
  •  perl (1)
  •  phpCAS (1)
  •  ping (1)
  •  pipeline (1)
  •  podcast (1)
  •  presse-papier (1)