> une piste :
>
> <path id="path.classpath">
> <!--<pathelement location="${dir.extclass}/**/*.jar" />-->
> <fileset dir="${dir.extclass}" />
> </path>
>
> o� ${dir.extclass} pointe vers le r�pertoire contenant les jars (chez
> moi �a
> marche)
Ca marche ! Effectivement, mon erreur (para�t-il "classique", dans le
fichier o� j'ai lu �a) viens du fait que j'indique un r�pertoire de
.jar dans le classpath, au lien d'indiquer les .jar eux-m�me (qui sont,
du point de vue de Java, des r�pertoires)... La directive "fileset"
sous Ant permet de reconstituer une liste de ces jars, et de les
injecter dans le classpath. Ouf !
Mais j'ai un autre probl�me maintenant =)
Une fois tout compil� (ca compile sans probl�mes), j'aimerai tout
mettre dans un .jar, pour n'avoir plus qu'un seul fichier � manipuler.
Or, une fois cr�� le jar (je met tout dedans: les .class bien s�r, mais
aussi les .jar des classes externes que j'utilise), � l'ex�cution il ne
me retrouve pas une classe particuli�re (celle du JDBC MySQL), que
j'instancie comme �a:
Class.forName("com.mysql.jdbc.Driver").newInstance();
Toutes les autres classes contenues dans les autres .jar (que j'utilise
par un simple "import ...") semblent accessibles sans probl�mes (en
tout cas je n'ai pas d'erreur pour elles; peux-�tre l'erreur pour
mm.mysql masque-t'elle les autres en interrompant la compilation � ce
stade ?).
Sauriez-vous comment instancier cette classe "com.mydsl.jdbc.Driver" ?
Aur�lien Mazurie
> ----- Original Message -----
> From: "Aurelien Mazurie" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Monday, September 23, 2002 12:09 PM
> Subject: Classpath
>
>
>>
>> Je suis nul !
>> Je sais, ca fait bizarre de commencer un e-mail avec cette
>> affirmation, mais je maintien: depuis le temps que je programme en
>> Java, je me suis toujours d�tach� des histoires de classpath en
>> faisant
>> un tour de passe-passe...
>>
>> Le probl�me est, j'imagine, tr�s simple pour vous tous; j'ai une s�rie
>> de classes externes comprises dans des fichiers .jar, que - bien s�r -
>> je veux appeller � partir de mon petit programme. Jusqu'� pr�sent, je
>> me suis amus� � extraire l'arborescence de ces .jar dans mon
>> r�pertoire
>> contenant mes sources, et ainsi � la compilation il retrouvait tous
>> les
>> .class qu'il lui fallait.
>>
>> Mais bon, je me suis dis que ca ne faisait pas "pro", et en plus
>> c'�tait p�nible de devoir tout recommencer d�s lors qu'une nouvelle
>> version des librairies que j'importait en .jar sortait. D'o� ma
>> volont�
>> d'organiser mes fichiers comme �a:
>>
>> /build - r�pertoire o� javac s'amuse
>> /src - r�pertoire contenant UNIQUEMENT mes classes � moi
>> /classes - r�pertoire contenant les .jars dont je veux utiliser les
>> classes
>>
>> Comme j'aime bien Ant, j'ai essay� de modifier mon petit build.xml
>> pour prendre en compte le r�pertoire /classes dans le CLASSPATH. Le
>> probl�me c'est que je n'arrive pas � lui faire entendre raison...
>> Pff... Voil� mon fichier:
>>
>> <project name="MyProject" default="compile" basedir=".">
>>
>> <property name="dir.source" value="src" />
>> <property name="dir.build" value="build" />
>> <property name="dir.extclass" value="classes" />
>>
>> <path id="path.classpath">
>> <pathelement location="${dir.extclass}/**/*.jar" />
>> </path>
>>
>> <!-- Initialisation: creation du repertoire de destination -->
>> <target name="init">
>> <tstamp/>
>> <mkdir dir="${dir.build}" />
>> </target>
>>
>> <!-- Compilation -->
>> <target name="compile" depends="init">
>> <javac srcdir="${dir.source}" destdir="${dir.build}">
>> <classpath refid="path.classpath" />
>> </javac>
>> </target>
>>
>> </project>
>>
>> Quelqu'un saurait me dire o� je me trompe ? A la compilation, il me
>> trouve toutes mes classes � moi (encore heureux...), mais bien s�r
>> aucune de celles incluses dans les fichiers classes/*.jar
>>
>> Ouin ! (snif)
>>
>> Aur�lien Mazurie
>