Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Javamail

7 réponses
Avatar
arnaud.desaivres
Bonjour,

Une petite question de d=E9butant :).
J'ai un prog ecrit sous eclipse en java qui utilise javamail.

Cependant je ne sait pas comment fonctionne l'ajout de
"bibliotheque"...
mail.jar
activation.jar

Mon programme fonctionne bien sous eclipse, mais quand je l'exporte en
.jar il ne fonctionne plus.
Si quelqu'un pouvait me donn=E9 quelques infos sur comment compiler pour
qu'il prenne en compte javamail.

Merci.

7 réponses

Avatar
Wallace
wrote:
Bonjour,

Une petite question de débutant :).
J'ai un prog ecrit sous eclipse en java qui utilise javamail.

Cependant je ne sait pas comment fonctionne l'ajout de
"bibliotheque"...
mail.jar
activation.jar

Mon programme fonctionne bien sous eclipse, mais quand je l'exporte en
.jar il ne fonctionne plus.
Si quelqu'un pouvait me donné quelques infos sur comment compiler pour
qu'il prenne en compte javamail.


Tu as 2 possibilités:
1/ tu fais java -classpath "monprog.jar;malib.jar" monpackage.MaClasse
2/ tu fais un manifest pour ton jar qui contient la ligne:
Class-Path: malib.jar
et tu lance ton prog avec java -jar monprog.jar

Avatar
arnaud.desaivres
Ok merci,

Je vais regarder du coté des classpath.


wrote:
Bonjour,

Une petite question de débutant :).
J'ai un prog ecrit sous eclipse en java qui utilise javamail.

Cependant je ne sait pas comment fonctionne l'ajout de
"bibliotheque"...
mail.jar
activation.jar

Mon programme fonctionne bien sous eclipse, mais quand je l'exporte en
.jar il ne fonctionne plus.
Si quelqu'un pouvait me donné quelques infos sur comment compiler pour
qu'il prenne en compte javamail.


Tu as 2 possibilités:
1/ tu fais java -classpath "monprog.jar;malib.jar" monpackage.MaClasse
2/ tu fais un manifest pour ton jar qui contient la ligne:
Class-Path: malib.jar
et tu lance ton prog avec java -jar monprog.jar



Avatar
TestMan
Bonjour,

Une petite question de débutant :).
J'ai un prog ecrit sous eclipse en java qui utilise javamail.

Cependant je ne sait pas comment fonctionne l'ajout de
"bibliotheque"...
mail.jar
activation.jar

Mon programme fonctionne bien sous eclipse, mais quand je l'exporte en
.jar il ne fonctionne plus.
Si quelqu'un pouvait me donné quelques infos sur comment compiler pour
qu'il prenne en compte javamail.

Merci.


Un peu de lecture pour débuter sous Eclipse
http://www.irisa.fr/imadoc/equipe/Carbonnel/docEnseignements/FaQeclipse.pdf
(voir §9)

A+
TM

Avatar
arnaud.desaivres
Bonjour,

J'ai suivi des docs sur le net et ce que vous m'avez dit, mais rien n'y
fait j'y arrive pas.
les lib sont bien presente sous eclipse.(mail.jar/activation.jar).
(propriété/lib/add external jar)

j'ai creer le fichier manifest avec :

Class-Path: mail.jar;activation.jar

Je ne comprend pas.
Je debute et je me pose une question. Puis-je creer un .jar qui
contient les lib necessaire a javamail ? ou faut-il que le PC qui
execute le .jar ai les lib ?

Mon prog tourne sous eclipse sans probleme.
quand je fait un : java -jar test.jar voici l'erreur :

Exception in thread "main" java.lang.NoClassDefFoundError:
javax/mail/MessagingException


Bonjour,

Une petite question de débutant :).
J'ai un prog ecrit sous eclipse en java qui utilise javamail.

Cependant je ne sait pas comment fonctionne l'ajout de
"bibliotheque"...
mail.jar
activation.jar

Mon programme fonctionne bien sous eclipse, mais quand je l'exporte en
.jar il ne fonctionne plus.
Si quelqu'un pouvait me donné quelques infos sur comment compiler pour
qu'il prenne en compte javamail.

Merci.


Un peu de lecture pour débuter sous Eclipse
http://www.irisa.fr/imadoc/equipe/Carbonnel/docEnseignements/FaQeclipse.p df
(voir §9)

A+
TM



Avatar
fr.comp.lang.java
Hello,

Toujours bloquer au même point :(.
Je pense savoir pourquoi j'ai l'erreur.. le classpath, mais j'arrive
pas a la resoudre.
Je suis sous winXP et quand je fait un "echo %CLASSPATH% il me donne
tjs la même chose.
J'ai modifier cette variable rien a changé.
quelques questions :

est-ce que le Class-Path donné dans le manifest change cette variable
le temps de l'exec du programe ?
J'ai un .classpath dans mon .jar. a quoi sert-il ?



On Nov 28, 10:52 am, wrote:
Bonjour,

J'ai suivi des docs sur le net et ce que vous m'avez dit, mais rien n'y
fait j'y arrive pas.
les lib sont bien presente sous eclipse.(mail.jar/activation.jar).
(propriété/lib/add external jar)

j'ai creer le fichier manifest avec :

Class-Path: mail.jar;activation.jar

Je ne comprend pas.
Je debute et je me pose une question. Puis-je creer un .jar qui
contient les lib necessaire a javamail ? ou faut-il que le PC qui
execute le .jar ai les lib ?

Mon prog tourne sous eclipse sans probleme.
quand je fait un : java -jar test.jar voici l'erreur :

Exception in thread "main" java.lang.NoClassDefFoundError:
javax/mail/MessagingException


Bonjour,

Une petite question de débutant :).
J'ai un prog ecrit sous eclipse en java qui utilise javamail.

Cependant je ne sait pas comment fonctionne l'ajout de
"bibliotheque"...
mail.jar
activation.jar

Mon programme fonctionne bien sous eclipse, mais quand je l'exporte en
.jar il ne fonctionne plus.
Si quelqu'un pouvait me donné quelques infos sur comment compiler p our
qu'il prenne en compte javamail.

Merci.


Un peu de lecture pour débuter sous Eclipse
http://www.irisa.fr/imadoc/equipe/Carbonnel/docEnseignements/FaQeclip...
(voir §9)

A+
TM





Avatar
TestMan
Hello,

Toujours bloquer au même point :(.
Je pense savoir pourquoi j'ai l'erreur.. le classpath, mais j'arrive
pas a la resoudre.
Je suis sous winXP et quand je fait un "echo %CLASSPATH% il me donne
tjs la même chose.
J'ai modifier cette variable rien a changé.
quelques questions :

est-ce que le Class-Path donné dans le manifest change cette variable
le temps de l'exec du programe ?
J'ai un .classpath dans mon .jar. a quoi sert-il ?
Bonjour,


Non, le Class-Path du manifest indique simplement à la VM qu'elle doit
trouver un fichier (souvent en chemin relatif avec le fichier dans
lequel le manifeste se situe) JAR qui sera nécessaire à l'application et
qu'il faut ajouter dans le classpath.

On peut ainsi dire qu'aproximativement, le classpath "habituel" dans la
VM est la concaténation :
- du bootclassspath (rt.jar, ...)
- de la liste des extensions dans jre/lib/ext
- de la liste des JAR de la variable d'environement CLASSPATH
- et de la liste des JAR listé dans le Class-Path du manifest.mf du
JAR "en cours" (s'il existe)

Si vous avez votre application dans un fichier .jar contenant toutes les
classes que vous avez codé, les resources leur étant nécessaire et un
fichier manifest.mf dans /META-INF/ avec une ligne du style
Main-Class : com.example.monpaquet.MaClasse

Et que votre application a comme dépendance d'utiliser JavaMail alors
vous avez les possibilités suivantes :

- Installer JavaMail comme une extension standard de votre VM (JRE) càd
dans jre/lib/ext
- positioner la variable d'environement CLASSPATH pour la faire pointer
vers le ou les fichiers JAR de JavaMail :
set CLASSPATH=C:cheminbidonjavamail.jar;.

('.' est simplement un "vielle habitude d'ancètre javaiste" pour pouvoir
lancer java com.example.monpaquet.MaClasse directement dans le
répertoire ou se trouve les classes compilées... "au cas où")

- Créer un fichier JNLP (pour un lancement en webstart) et copier tous
les JAR et le fichier JNLP sur votre serveur web (ou toute procédure
plus automatisée)

Si celà ne vous aide toujours pas, je ne pourais que vous conseiller la
lecture d'un bouquin Java sur le sujet ...

A+
TM

Avatar
fr.comp.lang.java
Je te remercie, tu m'eclairci sur certain point que j'avaais rencontrer
ici et la sur le web.
Mon prog fonctionne en copiant les .jar dans jre/lib/ext.

Je regarde du coté de la variable d'environement CLASSPATH (set
CLASSPATH=......)

Merci ^^


Hello,

Toujours bloquer au même point :(.
Je pense savoir pourquoi j'ai l'erreur.. le classpath, mais j'arrive
pas a la resoudre.
Je suis sous winXP et quand je fait un "echo %CLASSPATH% il me donne
tjs la même chose.
J'ai modifier cette variable rien a changé.
quelques questions :

est-ce que le Class-Path donné dans le manifest change cette variable
le temps de l'exec du programe ?
J'ai un .classpath dans mon .jar. a quoi sert-il ?
Bonjour,


Non, le Class-Path du manifest indique simplement à la VM qu'elle doit
trouver un fichier (souvent en chemin relatif avec le fichier dans
lequel le manifeste se situe) JAR qui sera nécessaire à l'application et
qu'il faut ajouter dans le classpath.

On peut ainsi dire qu'aproximativement, le classpath "habituel" dans la
VM est la concaténation :
- du bootclassspath (rt.jar, ...)
- de la liste des extensions dans jre/lib/ext
- de la liste des JAR de la variable d'environement CLASSPATH
- et de la liste des JAR listé dans le Class-Path du manifest.mf du
JAR "en cours" (s'il existe)

Si vous avez votre application dans un fichier .jar contenant toutes les
classes que vous avez codé, les resources leur étant nécessaire et un
fichier manifest.mf dans /META-INF/ avec une ligne du style
Main-Class : com.example.monpaquet.MaClasse

Et que votre application a comme dépendance d'utiliser JavaMail alors
vous avez les possibilités suivantes :

- Installer JavaMail comme une extension standard de votre VM (JRE) càd
dans jre/lib/ext
- positioner la variable d'environement CLASSPATH pour la faire pointer
vers le ou les fichiers JAR de JavaMail :
set CLASSPATH=C:cheminbidonjavamail.jar;.

('.' est simplement un "vielle habitude d'ancètre javaiste" pour pouvoir
lancer java com.example.monpaquet.MaClasse directement dans le
répertoire ou se trouve les classes compilées... "au cas où")

- Créer un fichier JNLP (pour un lancement en webstart) et copier tous
les JAR et le fichier JNLP sur votre serveur web (ou toute procédure
plus automatisée)

Si celà ne vous aide toujours pas, je ne pourais que vous conseiller la
lecture d'un bouquin Java sur le sujet ...

A+
TM