Bonjour,
Je précise tout de suite que j'ai plusieurs années d'expérience Java derrière moi, mais je travaille toujours sous Eclipse, et mes dernières compilations à la main sous Unix remontent à mon apprentissage scolaire.
Dans mon programme, j'ai besoin de connaître le nombre de pages d'un fichier PDF généré précédemment. J
J'ai donc créé une classe test à cet effet, qui ouvre un fichier PDF (via l'API Apache PdfBox) et compte le nombre de pages.
J'ai créé la dite classe, toute simple, sous Eclipse. Cela fonctionne à merveille.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 import java.io.File; import java.io.IOException; import org.apache.pdfbox.pdmodel.PDDocument; class testPDF { public static void main(String args[]) { PDDocument doc = null; try { doc = PDDocument.load(new File("C:\\\\Lisezmoi.pdf")); } catch (IOException e) { e.printStackTrace(); } int count = doc.getNumberOfPages(); System.out.println("il y a "+count+" pages dans le document"); } }Me voilà donc parti sous linux, je dispose dans un même répertoire mon fichier testPDF.java, mon jar de pdfbox, et je me lance à la compilation à la main.Exécution :
il y a 20 pages dans le document
Je compile sans soucis, jusque là ça va. C'est à l'exécution que ça se gâte.javac -classpath pdfbox-app-1.7.1.jar testPDF.java
Je me dis alors qu'il faut que je rajoute de nouveau au classpath mon jarjava testPDF
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/pdfbox/pdmodel/PDDocument
at testPDF.main(testPDF.java:12)
Une idée ?java -cp pdfbox-app-1.7.1.jar testPDF
Exception in thread "main" java.lang.NoClassDefFoundError: testPDF
Merci d'avance
Partager