Dans le cadre de mon projet SaD (Synchronize All Directories) dont je vous parlerais bientôt dans ma rubrique projet, j’ai besoin de manipuler des dépôts SVN depuis un client JAVA.
Et il se trouve que j’ai trouvé une super librairie gratuite simple et efficace comme je les aime pour ça, alors je vous la fait partager !!
Pour l’installer :
- Cliquez ici : http://www.svnkit.com/download.php et téléchargez la dernière version stable Standalone (au moment ou je vous ecris : org.tmatesoft.svn_1.3.6.1.standalone.zip )
- de zippez le bousin et récupérez tous les .jar qui se trouvent dans le dossier “lib”
- Créez votre projet JAVA sur eclipse
- faites glisser les .jar de votre dossier décompressé vers votre projet java (copy files –> ok)
- clic droit sur votre projet Java –> Build path –> Configure build path
- Add Jar –> déployez le dossier de votre projet, sélectionnez tous les jar –> ok
Le projet est installé !! Vous n’avez plus qu’à parcourir la marche à suivre sur le wiki et la doc de SVNKit.
… Allez comme je suis un grand prince je vous donne en bonus deux classes de ma création qui simplifient encore plus le processus :
Téléchargez :
Svn.java et
SvnEntry.java et incluez les dans votre projet Java
Vous pouvez maintenant créer une page main avec le code suivant :
public static void main(String[] args) { Svn svn = new Svn(); //On definis l'url du dépot subversion svn.setUrl("http://xxx.xxx.xx.xx/svn/MonDepot"); //On définis l'identifiant pour accèder au dépot (si l'accès est anonyme, ne rien définir) svn.setLogin("monLogin"); //On définis le mot de passe pour accèder au dépot (si l'accès est anonyme, ne rien définir) svn.setPassword("monPassword"); //on se connect au svn if(svn.connect()){ //On récupere la liste des dossier et fichiers du dépot a partir de la racine (donc le chemin "") try { List<SvnEntry> tree= svn.list(""); //Pour chaques élément récupéré for (int i = 0; i < tree.size(); i++) { SvnEntry entry = tree.get(i); //On imprime les infos de l'élément dans la console System.out.println(entry.toString()); } } catch (SVNException e) { System.out.println("listing de '' impossible : "+e); } }else{ System.out.println("connexion impossible"); } }
merci bcs ça ma bcs aidè ,en faite les lien svn.java et svnEntry.java marchent pas si vous pouvez les reglè plz 🙂
Les liens ont été réactivé, merci beaucoup d’avoir signalé ^^ 🙂
🙂
et puis le projet marche pas pour moi peut etre car je suis debutante en ça ” eclipse trouve bcs de faute j cè pas de koi (surtt en svn.java) “
mnt ça marche 🙂 merci
juste jai oubliè “add jar”:)
bonjour, merci pour le tuto il marche à merveille. En faite je souhaiterais récupérer et copier(les répertoires) dans un dossier (dans le bureau ) au lieu de les imprimer sur la console ,vous avez une idée ???
salutation
Regarde la doc de svnkit tu devrais trouver ton bonheur 🙂