> 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
>

Répondre à