Utilisation d'OpenGrok

OpenGrok est un des nombreux sous projets OpenSolaris. Il est utilisé pour naviguer et faire des recherches dans le code d’OpenSolaris, on peut voir une démonstration sur : http://cvs.opensolaris.org/source/ (on parle de cross referencer).

Note: OpenGrok est multiplateforme et son utilisation ne se limite pas à Solaris.

Tout d’abord, vous devez installer la JDK 1.5 ainsi que Tomcat (ou tout autre conteneur de servlets)

Téléchargement d'OpenGrok

On peut télécharger OpenGrok sur la page du projet : http://www.opensolaris.org/os/project/opengrok/.

Dépaquetage d'OpenGrok

gunzip opengrok-0.3.tar.gz
tar -xvf opengrok-0.3.tar
cd opengrok-0.3

Mise en forme des données

On suppose que les données sont dans ~/src/projet et qu’on va mettre le résultat du traitement dans ~/tools/opengrok/projet :

java -jar opengrok.jar -s ~/src/projet ~/tools/opengrok/projet

Si vous avez une erreur de type : Error: executing ctags! null, Ajoutez l’option -c <path vers ctags>, exemple :

java -jar opengrok.jar -c /usr/bin/exuberant-ctags  -s /tmp/source/ /tmp/opengrok/

Utilisation de subversion

Si vous souhaitez disposer des fonctionnalités liés à Subversion, vous devez compiler le support javahl, et copier les fichiers libsvnjavahl* dans le répertoire jre/lib/i386 de votre JDK.

Préparation du déploiement

Il ne nous reste plus qu’à préparer le déploiement, pour cela, nous allons éditer le fichier web.xml. Tout d’abord, nous allons l’extraire du fichier source.war

unzip source.war WEB-INF/web.xml

Puis, on édite le fichier WEB-INF/web.xml, et on modifie les valeurs DATA_ROOT et SRC_ROOT pour obtenir (voir valeur dans les tags param-value):

  <context-param>
    <param-name>DATA_ROOT</param-name>
    <param-value>/tmp/opengrok/</param-value>
    <description>REQUIRED: Full path of the directory where data files generated by OpenGrok are stored</description>
  </context-param>

  <context-param>
    <param-name>SRC_ROOT</param-name>
    <param-value>/tmp/source</param-value>
    <description>REQUIRED: Full path to source tree</description>
  </context-param>

Puis on remet le fichier WEB-INF/web.xml dans l’archive source.war :

zip -u source.war WEB-INF/web.xml

Déploiement

Il suffit ensuite de lancer un serveur tomcat et de recopier le fichier source.war dans le répertoire webapps de tomcat. Exemple :

cp source.war /opt/tomcat5/webapps

Tests

Pour finir, on peut aller voir le résultat dans son navigateur : http://localhost:8080/source/

Build d'OpenGrok

Pour compiler OpenGrok, vous avez besoin de Ant ainsi que de la librairie JFlex

Il faut d’abord copier le fichier JFlex.jar dans le répertoire lib de ant :

cp jflex-1.4.1/lib/JFlex.jar $ANT_HOME/lib

on peut ensuite compiler OpenGrok :

ant build
 
docs/opengrok.txt · Dernière modification: 07/12/2007 11:56 par asyd