Packages, Java, ligne de commande, classpath et cie.
Par Michel Billaud, mercredi 25 mars 2009 à 17:24 :: Bidouilles :: #50 :: rss
L'autre jour je voulais essayer une bibliothèque java "PDFrenderer" qui, comme son nom l'indique, permet de visualiser des fichiers PDF dans un composant graphique Java. Je n'arrivais pas à faire tourner mon programme de tests. Voila pourquoi !
Bon, partons d'une bibliotheque java récupérée sur le Web qui s'appellerait, par exemple, bib.jar
On veut faire des programme de tests, et même plusieurs. On fait les choses bien :
- on crée un repertoire appelé tests
- dans ce répertoire on place les sources Java des classes Test1, Test2 etc..., dont les sources commencent évidemment par la déclaration " package tests;
"
- on compile les tests, en précisant qu'il faut utiliser l'archive
javac tests/*.java -cp bib.jar
- et on essaie de lancer l'exécution
java tests.Essai1 -cp bib.jar:.
là on se fait engueuler :
Exception in thread "main" java.lang.NoClassDefFoundError: bib.machin.chose at tests.Test1.main(Test1.java:11)
Bon, j'ai cherché un moment, ça m'a bien fait perdre une heure. En fait c'est tout bête, il faut donner le nom de la classe principale après avoir précisé le classpath
java -cp bib.jar:. tests.Essai1
Doh !
Commentaires
Aucun commentaire pour le moment.
Ajouter un commentaire
Les commentaires pour ce billet sont fermés.