Salut je suis nouveau sur le Forum, Et j’aimerais savoirs comment ajouter un jar dans le classpath sous Linux/UNIX.
Merci.
Salut je suis nouveau sur le Forum, Et j’aimerais savoirs comment ajouter un jar dans le classpath sous Linux/UNIX.
Merci.
Le classpath est défini de plusieurs manières. Si le but est d'avoir la librairie à l'exécution d'un programme que tu as compilé en ligne de commande, la commande -cp suffit
et pour exécuter
Code : Sélectionner tout - Visualiser dans une fenêtre à part javac -cp .:/chemin/vers/librairie.jar mon/package/Main.java
Si tu travaille avec un IDE rajoute simplement le jar au build path. Par exemple sous eclipse: clic droit sur le jar, build path -> add to build path
Code : Sélectionner tout - Visualiser dans une fenêtre à part javac -cp .:/chemin/vers/librairie.jar mon.package.Main
Si tu crée un jar de ton application, mais la librairie dans un répertoire, par exemple "lib" à part des sources et référence le chemin relatif vers ce répertoire dans l'entrée class-path du MANIFEST.MF
Re,
J'arrive bien a compiler, mais je ne comprend pas la signification mon.package.Main
en sachant que le répertoire de mon projet et le fichier jar ce trouvent tout les deux dans le dossier root
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 root@bt:~# javac -cp .:/javamail-1.4.7/mail.jar BoomMail/src/BoomMail.java root@bt:~# javac -cp .:/javamail-1.4.7/mail.jar BoomMail/src/BoomMail.class javac: invalid flag: BoomMail/src/BoomMail.class Usage: javac <options> <source files> use -help for a list of possible options
Apparemment c'est pas le chemin du fichier .class mais quoi ?
Merci
Salut,
C'est parce qu'il y a une petite faute de frappe dans le message de @Tchize_ la commande pour exécuter :
Il fallait lire :
Par contre, on le voit, on met le nom de la classe. On peut mettre des / au lieu des ., mais on ne met jamais l'extension .class comme tu as fais.
Code : Sélectionner tout - Visualiser dans une fenêtre à part java -cp .:/chemin/vers/librairie.jar mon.package.Main
Au sujet du classpath (ce qu'on met en paramètre du switch -cp) : il ne contient pas seulement les jar, mais doit également contenir tous les package de classes que tu utilises, en particulier ta classe BoomMail (c'est le sens du . dans l'exemple donné par @Tchize_, qui ne fonctionne que lorsqu'on lance java dans le dossier ou se trouve le package qui contient la classe "main", donc ce lui qui contient l'arborescence mon/package/Main.class dans l'exemple donné).
Ta classe est dans le package default, et tu lances ta commande alors que tu es dans le dossier root, donc la commande doit être :
Code : Sélectionner tout - Visualiser dans une fenêtre à part java -cp BoomMail/src/:/javamail-1.4.7/mail.jar BoomMail
L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
Nouveau sur le forum ? Consultez Les Règles du Club.
Re salut, et désolé pour le retard. si non l’exécution marche bien, merci de votre aide
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager