jeudi 14 mars 2013

svnant, svnkit & subversion 1.7.x

Voici un topo rapide pour faire fonctionner svnant avec subversion 1.7.x

Le truc c'est d'utiliser svnant avec svnkit, mais la nouvelle version de svnkit, pas celle fournie avec svnant.

1°) Télécharger la dernière version de svnant :
http://subclipse.tigris.org/svnant.html
et la dézipper dans un répertoire, appelons-le SVNANT_HOME

2°) Il faut utiliser la dernière version de svnkit
http://svnkit.com/download.php
et la dézipper dans un répertoire, appelons-le SVNKIT_HOME


3°) Dans votre build.xml, définir le classpath et les tâches svn :


<path id="path.svnant">
 <fileset dir="${SVNANT_HOME}\lib" includes="**/*.jar" >
  <exclude name="svnkit.jar"/>
  <exclude name="ganymed.jar"/>
 </fileset>
 <fileset dir="${SVNKIT_HOME}\lib" includes="**/*.jar" />
</path>
<typedef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="path.svnant" />


Remplacer ${SVNANT_HOME} et ${SVNKIT_HOME} par vos propres répertoires.
Remarquer la suppression de svnkit et ganymed.jar fourni avec svnant.

4°) On peut utiliser les tâches svn, par exemple récupérer le dernier numéro de révision du répertoire courant  :


<target name="revision">
<svnSetting
 svnkit="true"
 javahl="false"
 id="svn.settings"
/>
<svn refid="svn.settings" >
<wcVersion path="." />
</svn>
<echo message="Rev: ${revision.max}" />
</target>


5°) Soit le build.xml total :


<?xml version="1.0"?>
<project name="svnant-test" basedir="." default="revision">
<path id="path.svnant">
 <fileset dir="C:\Apps\svnant-1.3.1\lib" includes="**/*.jar" >
  <exclude name="svnkit.jar"/>
  <exclude name="ganymed.jar"/>
 </fileset>
 <fileset dir="C:\Apps\svnkit-1.7.8\lib" includes="**/*.jar" />
</path>
<typedef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="path.svnant" />

<target name="revision">
<svnSetting
 svnkit="true"
 javahl="false"
 id="svn.settings"
/>
<svn refid="svn.settings" >
<wcVersion path="." />
</svn>
<echo message="Rev: ${revision.max}" />
</target>
</project>

Aucun commentaire:

Enregistrer un commentaire